我注意到当我创建一个ListView时有一个奇怪的效果。
如果我创建一个没有Button的ListView,ListView中选定的项会有一个点状边框。然而,当我也创建一个Button时,ListView选定的项就不再有点状边框了。只有在我拥有一个启用公共控件6的清单文件时才会发生这种情况:
这是我用来创建窗口、ListView和Button的代码:
如果我创建一个没有Button的ListView,ListView中选定的项会有一个点状边框。然而,当我也创建一个Button时,ListView选定的项就不再有点状边框了。只有在我拥有一个启用公共控件6的清单文件时才会发生这种情况:
这是我用来创建窗口、ListView和Button的代码:
// Create Window
HWND hWnd = CreateWindowEx(0, "WinClass", "My Window", WS_OVERLAPPEDWINDOW, 261, 172, 394, 284, NULL, NULL, hInstance, NULL);
// Create ListView
HWND hListView = CreateWindowEx(0, WC_LISTVIEW, "", WS_CHILD | LVS_REPORT | WS_VISIBLE, 0, 0, 232, 190, hWnd, 0, GetModuleHandle(NULL), NULL);
// Create Button
HWND hButtonRefresh = CreateWindowEx(NULL, "BUTTON", "OK", WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON, 10, 200, 110, 25, hWnd, NULL, GetModuleHandle(NULL), NULL);
注意:我并不是对这个效果有问题,我只是想了解为什么会出现这种情况!
WM_CHANGEUISTATE
消息来改变这一设置。 - Jonathan Potter