alt text http://i31.tinypic.com/2iw52dl.png
请参阅上面的截图。左边是WM 6,右边是WM 6.5.3。在6.5.3中,有一个自动布局引擎,可以摆弄所有控件,使它们更友好。我的文档说明了这一点:
默认情况下,第三方应用程序禁用自动布局。然而。应用程序开发人员可以通过在其应用程序中设置以下样式标志来启用此功能:DS_EX_AUTOTOUCHLAYOUT(0x00200000L)。启用后,Auto Layout引擎将自动为每个控件设置样式标志,以便应用程序支持手指触摸功能。
DS_EX_AUTOTOUCHLAYOUT标志在我的6.5.3 DTK标头中定义:
#define DS_EX_AUTOTOUCHLAYOUT 0x01000000L
(请注意,doc和header值不同)
但无论我如何尝试在本机代码或托管代码中使用表单(自定义窗口类)或对话框(DIALOG窗口类),我都无法看到上面右侧的ListView项目。我只得到普通的薄(高度)固体背景物品。
我在远程间谍模拟器中查看了10个左右的MS应用程序,有些是所有者绘制的,但是大多数都没有,所以这不能成为造成时髦外观的原因。在远程间谍中查看MS提供的应用程序时,我找不到任何其他一致的模式。
如何使我的应用程序的行为与MS一样友好,并且看起来也不错?
谢谢!
答案 0 :(得分:3)
“新”列表视图项呈现的秘密与自动布局引擎没有任何关系。只需向列表视图发送LVM_SETEXTENDEDLISTVIEWSTYLE
消息,同时将掩码和样式设置为LVS_EX_THEME
!