在输入验证时,我使用气球提示而不是消息框.我的问题是,在Vista上,它们具有圆角的旧XP风格,而不是更新的更像矩形的外观.
我尝试使用CreateWindowEx创建它们,tooltips_class32
或者使用SendMessageW显示Edit的关联balloontip EM_SHOWBALLOONTIP
,结果是一样的.在Visual Studio和C#中执行相同的操作会产生Vista样式的气球提示.
当您在密码编辑中切换Caps Lock时,您可以看到我需要的气球提示示例,就像Windows登录时的那样.
如果您正在使用Delphi 2009,那么添加气球提示相当简单,尽管文档很差.(惊喜,惊喜)
在表单上删除TBalloonHint
如果需要,删除TImageList以包含图标.
将TIMageList链接到TBalloonHint
将窗体的CustomHint属性设置为TBalloonHint
确保为控件设置ShowHint和ParentCustomHint为true.
下一点非常不明显:
将控件的"提示"属性设置为"标题|提示| ImageIndex"
你完成了.这看起来不像100%vista,可能是由于字体选择.但它非常接近.
(来源:codegear.com) ,