WinAPI组合框无法高亮/选中文本问题求助
WinAPI组合框无法高亮/选中文本问题求助
我用WinAPI写GUI的时候碰到个麻烦事儿:我的组合框(ComboBox)在鼠标悬停或点击下拉选项时,文本根本不会被高亮选中;甚至用TAB键切换焦点到它身上时,组合框本身也没显示高亮状态。
目前组合框在主窗口里是正常显示的,下拉列表也能正常展开,就是选中高亮这块完全没反应。有没有大佬能帮我看看下面的代码片段哪里出问题了?
#include <windows.h> #include <windowsx.h> #include <CommCtrl.h> #include <wingdi.h> #include <WinUser.h> #include <stdbool.h> #define APP_CLASS_NAME_W L"Test GUI Class" #define APP_NAME_CAPTION_W L"My Test GUI" #define APP_DEFAULT_WIDTH 640 #define APP_DEFAULT_HEIGHT 480 #define APP_BACKGROUND_COLOR (RGB(225, 229, 180)) enum e_TestGUIObjectIndices { e_TEST_GUI_COMBOBOX = 1 }; typedef struct s_TestGUIWindowsParams { int X; int Y; int Width; int Height; } t_TestGUIWindowsParams; LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
注:原代码里的窗口过程(WindowProc)部分没贴完整,如果有处理组合框相关消息的逻辑,补充出来会更方便排查问题~
备注:内容来源于stack exchange,提问作者djay
相关产品推荐
相关产品推荐

