0

我的自定义表格控件绘制自己的复选框并处理自己的复选框事件。现在,当我计算主题复选框的大小(使用GetThemePartSize())时,我确保所有状态的大小都相同,如果一个状态不同,就会惊慌失措。如果我要更改为即时计算复选框大小(传入HDC一个我无论如何都要重组我所有的控件代码)。

我可以假设所有主题复选框状态都具有相同的大小吗?如果不是,我该如何处理用于绘图的尺寸差异:我是否总是使用最大尺寸,如果是这样,我在哪里绘制相对于最大尺寸的较小复选框,还是我做其他事情?对于命中测试:我总是考虑最大的尺寸吗?

旧的“Windows XP 视觉指南”文档建议它们都应该具有相同的大小,但这并不能保证未来版本的 Windows 的任何内容(我也不知道未来版本的 Windows 有类似的文档)。我在 MSDN 或头文件中没有看到任何其他内容。

我在这里专门谈论uxtheme;我不知道非主题复选框(现在我只对所有状态使用小图标大小,但我确信有更好的方法来获取我不知道的大小......)。

谢谢。

4

0 回答 0