WinAPI ComboBox 不显示下拉列表
WinAPI ComboBox shows no dropdown list
当我按下箭头按钮时,ComboBox 控件为什么不显示下拉列表?准确地说,它 "attempts" 显示了一些东西,但看起来它在屏幕上显示的 space 不够,所以只显示了一条细线(就像 "listbox with zero items")。当我使用向上和向下箭头时,我可以遍历 ComboBox 中的可用选项。这张图片演示了(注意 ComboBox 下方的黑线,它是对我尝试显示下拉列表的回应) http://nestorovic.hyperlink.cz/comboBoxProblem.PNG 。
可能是列表框试图适应的 ComboBox 周围有一个边界矩形吗?这样的矩形如何增加?谢谢回复!
知道了!确实有一个边界矩形,我必须使用 GetClientRect 和 SetWindowPos 函数来增加它,http://nestorovic.hyperlink.cz/comboBoxSolved.PNG .
我对组合框有同样的问题。对我来说解决方案很简单。您只需要提高按钮高度即可。当我将按钮高度设置为 25 时,只有黑色细线。但是当我将高度设置为 200 时,我的所有列表都出现在按下按钮时。
HWND hwndChannelList = CreateWindow(
L"COMBOBOX", // Predefined class; Unicode assumed
L"", // Button text
WS_VISIBLE | WS_CHILD | CBS_DROPDOWNLIST | BS_DEFSPLITBUTTON | CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL, // Styles WS_VSCROLL | BS_DEFSPLITBUTTON WS_DISABLED |
10, // x position
80, // y position
100, // Button width
200, // Button height
hWnd, // Parent window
(HMENU)IDC_CHANNEL_COUT_BUTTON, //menu.
(HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE),
NULL);
当我按下箭头按钮时,ComboBox 控件为什么不显示下拉列表?准确地说,它 "attempts" 显示了一些东西,但看起来它在屏幕上显示的 space 不够,所以只显示了一条细线(就像 "listbox with zero items")。当我使用向上和向下箭头时,我可以遍历 ComboBox 中的可用选项。这张图片演示了(注意 ComboBox 下方的黑线,它是对我尝试显示下拉列表的回应) http://nestorovic.hyperlink.cz/comboBoxProblem.PNG 。 可能是列表框试图适应的 ComboBox 周围有一个边界矩形吗?这样的矩形如何增加?谢谢回复!
知道了!确实有一个边界矩形,我必须使用 GetClientRect 和 SetWindowPos 函数来增加它,http://nestorovic.hyperlink.cz/comboBoxSolved.PNG .
我对组合框有同样的问题。对我来说解决方案很简单。您只需要提高按钮高度即可。当我将按钮高度设置为 25 时,只有黑色细线。但是当我将高度设置为 200 时,我的所有列表都出现在按下按钮时。
HWND hwndChannelList = CreateWindow(
L"COMBOBOX", // Predefined class; Unicode assumed
L"", // Button text
WS_VISIBLE | WS_CHILD | CBS_DROPDOWNLIST | BS_DEFSPLITBUTTON | CBS_DROPDOWN | CBS_HASSTRINGS | WS_VSCROLL, // Styles WS_VSCROLL | BS_DEFSPLITBUTTON WS_DISABLED |
10, // x position
80, // y position
100, // Button width
200, // Button height
hWnd, // Parent window
(HMENU)IDC_CHANNEL_COUT_BUTTON, //menu.
(HINSTANCE)GetWindowLong(hWnd, GWL_HINSTANCE),
NULL);