【问题标题】:Styles of buttons on win32 C++win32 C++上的按钮样式
【发布时间】:2009-02-22 02:19:26
【问题描述】:

我知道您可以在 C++ win32 exa 中的按钮上添加一些样式。像 BS_DEFPUSHBUTTON BS_RADIOBUTTON 但我不知道所有这些,也不知道如何制作用户绘制的按钮

【问题讨论】:

  • 我确定您的意思是“Win32 exe”,您能否更改您的描述,以便其他人可以有效地搜索?谢谢!

标签: c++ winapi


【解决方案1】:

你可以在 MSDN 上找到reference of all button styles(和往常一样)。和an overview of the Button control 一般。

要创建所有者绘制的按钮,您需要指定BS_OWNERDRAW 标志并在按钮父窗口中处理WM_DRAWITEM 通知。

【讨论】:

    【解决方案2】:

    如果您只想调整按钮绘制算法,您应该查看DrawThemeBackground API - 它允许您使用标准 Windows 主题引擎使用的相同视觉效果来绘制按钮。

    但是,当主题被禁用(当 OpenTheme 失败时)时,您确实需要小心处理这种情况 - 在这种情况下,不幸的是,您只能靠自己了。

    【讨论】:

      猜你喜欢
      • 2021-01-10
      • 2013-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-14
      • 2016-09-13
      相关资源
      最近更新 更多