创建看起来像 TMainMenu 的 TPanel?
我想创建一个看起来类似于 TMainMenu 但基于 TPanel 的组件。 Windows 7下的TMainMenu具有渐变颜色。
如何让 TPanel 达到类似的效果?不是任何渐变,而是 Windows 渐变,因此它看起来像本机组件。
我也尝试过 TMainMenu.PaintTo 但此方法不可用。
I want to create a component which looks similar to TMainMenu but is based on TPanel.
TMainMenu under Windows 7 has a gradient of colors.
How can I achieve similar effect for TPanel? Not any gradient but a Windows gradient so it looks like a native component.
I also tried TMainMenu.PaintTo but this method is not available.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
由于 UxTheme API(
使用 UxTheme
),这实际上很容易。使用
OpenThemeData
< /a> 和DrawThemeBackground
,生成
当然,在真实的应用程序中,你会重构 这。例如,您不会对
32
常量进行硬编码;相反,您可以根据当前 DPI 缩放确定适当的菜单栏高度,This is actually easy thanks to the UxTheme API (
uses UxTheme
).Using
OpenThemeData
andDrawThemeBackground
,produces
Of course, in a real application, you would refactor this. For instance, you wouldn't hardcode the
32
constant; instead, you'd determine the appropriate menu bar height given current DPI scaling,