是为ListBox(WC_ListView)自动绘制的焦点矩形
Is focus rect drawn automatically for listbox (WC_LISTVIEW)?
我创建了一个与此处提供的代码相似的列表框。在我的UI中,defwindowproc((会自动绘制选项卡焦点矩形,还是需要照顾好?我看不到焦点矩形被划分在选项卡焦点上。
谢谢。
HWND CreateListView (HWND hwndParent)
{
INITCOMMONCONTROLSEX icex; // Structure for control initialization.
icex.dwICC = ICC_LISTVIEW_CLASSES;
InitCommonControlsEx(&icex);
RECT rcClient; // The parent window's client area.
GetClientRect (hwndParent, &rcClient);
// Create the list-view window in report view with label editing enabled.
HWND hWndListView = CreateWindow(WC_LISTVIEW,
L"",
WS_CHILD | WS_VISIBLE | LVS_LIST,
0, 0,
rcClient.right - rcClient.left,
rcClient.bottom - rcClient.top,
hwndParent,
(HMENU)IDM_CODE_SAMPLES,
g_hInst,
NULL);
return (hWndListView);
}
通常,默认窗口过程绘制了所有者对WM_DRAWITEM
消息绘制的列表框项目的焦点矩形。
在msdn
中对于一个空列表框或组合框,
itemID
可以为-1。这允许 仅在坐标处绘制焦点矩形的应用 即使rcItem
成员指定 控制。这向用户指示列表框还是组合框 有重点。itemAction
成员中的位置如何设置 确定是否要绘制矩形,好像列表框一样 或组合盒有重点。
如果您不使用所有者/自定义绘图,那么所有Windows Common控件都会自动为您绘制焦点矩形。
Windows 2000(及以后(隐藏键盘加速器和默认矩形,除非您使用键盘与窗口进行交互。
Windows启用应用程序可以在其UI中隐藏或显示各种功能。这些设置称为UI状态。UI状态包括以下设置:
- 焦点指标(例如焦点矩形在按钮上(
- 键盘加速器(由控制标签中的下划线指示(
相关文章:
- QuadTree只在窗口的右上角绘制
- 绘制旋转的三角形
- flutter:即使shouldRepaint()返回true,自定义画家也不会重新绘制
- 如何在QT中的自定义视频小工具t上绘制矩形
- 如何在Visual Basic中使用矩形函数OpenGL绘制矩形
- 无法使用VAO和EBO(openGL)绘制多个对象
- 为什么我的点没有在 OpenGL 中绘制鼠标所在的位置?
- 绘制顺时针三角形,重新排序点
- 在顶点着色器中使用 OpenGl 的未声明标识符,我在顶点着色器中绘制三角形时遇到问题
- SFML 文本未绘制在窗口上
- 如何在快板的屏幕中显示子位图的绘制?
- 如何绘制自定义形状的元素?
- QPainter 将 QBrush 设置为 在 QT/C++ 中绘制文本
- 除非重新绘制大小,否则SDL_Texture在调整大小后呈现黑色
- 绘制文本问题
- 在 QT C++中绘制/操作多边形
- 如何在 Gnuplot 中分别绘制 2 个文件数据?我有一个文件"sin.txt",另一个文件"cos.txt",我想将它们分别绘制在一个图表上
- 在现代OpenGL中,绘制GL_TRIANGLE奇怪的z轴行为的填充圆
- OpenGL 着色器不绘制任何东西 - 糟糕的精灵类
- 是为ListBox(WC_ListView)自动绘制的焦点矩形