0

是否可以在 WM_SIZE 的 Windows 消息处理程序中检测当前大小更改是否由用户操作触发(例如通过鼠标或通过系统菜单+键盘调整大小)?

(目前我正在设置/重置一个标志是否调整大小是“因为我的代码”,但在某些情况下这非常笨拙)


[编辑] 用例:
目的是将“用户设置的尺寸”与其他操作(也由用户控制)触发的尺寸变化区分开来。

在这种特殊情况下,我有一个属性表控件,其中每个页面都有不同的最小/默认大小。

预期的用户行为如下:

  • sheet的最小尺寸不小于当前页面要求的尺寸(即页面改变时改变)
  • 如果用户将工作表的大小设置为“尽可能小”,然后切换到另一个页面,则它也应该设置为“该页面尽可能小”。

(非正式的第一级可用性测试 - 即我玩弄它 - 表明这种“使用更小的尺寸”对于 X 和 Y 单独跟踪更好)

是的,这会导致页面更改时纸张尺寸跳跃。这是不幸的,但比此特定应用程序中的替代方案要好。

在这种情况下,该风不支持 Aero 对接,因为它不是顶级的。


FWIW,对于所有控件始终一致地触发更改消息,并且如果这是由用户操作触发或以编程方式在我的“UI控件API必不可少”列表中排名很高,则具有指示器。

4

0 回答 0