德尔福对话形式的雪佛龙按钮

时间:2011-08-31 23:05:34

标签: delphi winapi windows-7

我想画一个雪佛龙按钮

enter image description here

在自定义对话框中,我想知道是否存在要与DrawThemeBackground函数一起使用的State和Part常量,或者我必须手动绘制这种按钮?

2 个答案:

答案 0 :(得分:12)

我能找到的最接近XP的是

ThemeServices.DrawElement(Canvas.Handle, GetElementDetails(tebNormalGroupExpandNormal), Rect(10, 100, 100, 200));

enter image description here

EBP_NORMALGROUPEXPAND直接使用DrawThemeBackground。然而,这会产生一个双箭头(至少在XP上)

但是后来的Windows版本也有TDLG_EXPANDOBUTTON,这是你想要的Where do I find the icons / animations recommended in the Windows 7 UX guide?

图像判断

感谢Andreas(与主题和客户绘图相关的问题一样)

另请参阅Windows Visual Themes: Gallery of Parts and States?

中的实用程序

理想情况下,我会使用第二个版本(如果可用),但会回到XP上的第一个版本。

答案 1 :(得分:0)

您无法在零件和状态列表中找到它?那它就不存在了。 http://msdn.microsoft.com/en-us/library/bb773210(v=vs.85).aspx