创建一个带有向下箭头图标的按钮

标签 c winapi button

我想创建一个带有向下箭头图标的按钮,单击该按钮会显示一个菜单。我找到了以下按钮类型:

enter image description here

但是这个按钮可以在两个地方按下(在垂直线的左边和垂直线的右边),而且我不希望按钮有一条垂直线,我希望它是一些东西像这样:

enter image description here

这可以在 Windows API 中完成吗?

最佳答案

您要查找的内容可以使用以下任一方式完成:

  1. 一个标准COMBOBOX control使用 CBS_DROPDOWNLIST 窗口样式:

image
(来源:s-msft.com)

  1. A Menu button :

image
(来源:s-msft.com)

但是,这不是标准的 Win32 控件。 MFC 有一个 CMFCMenuButton类,但在 Win32 中,您必须自己绘制一个标准 BUTTON control达到同样的效果:

Menu button arrow with raw Win32

按下按钮后,您可以根据需要显示弹出菜单,使用 TrackPopupMenu()或等效的。

关于创建一个带有向下箭头图标的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35971758/

相关文章:

c++ - 谁需要释放返回 char* 的系统调用的内存

c++ - Process Explorer 使用哪个 winapi 函数来挂起进程?

c++ - 给定基色计算渐变填充的开始和结束颜色

html - Bootstrap 按钮在媒体设备中不起作用?

c++ - OSI 层在代码中的实际实现

c - 使用 fgets() 接收句子输入

c# - 在 C# 中使用 C 函数

c# - 使用 P/Invoked GlobalSize 时堆已损坏

swift - Swift 中具有多个可访问标签和图像的按钮

java - (JavaFX)(场景生成器) 如何使按钮在单击后出现?