调用WM_SETTEXT后,Win32 C 子分类标签未接收WM_PAINT
Win32 C++ Subclassed label not receiving WM_PAINT after calling WM_SETTEXT
在呼叫wm_settext之后,子分类控件未接收wm_paint是正常行为吗?
父母确实会收到wm_ctlcolor,但我想在我的子分类的wm_paint消息中绘画。
我假设致电WM_SETTEXT后打电话给Invalidaterect?
让我知道您是否想查看代码。我觉得这个问题不是必需的,这就是为什么我最初将其遗漏了。
是否以WM_SetText的响应发送WM_PAINT取决于已属于哪个窗口类,例如,按钮是无效的,但列表框并非不仅仅是在UI中显示的调试援助)。
如果您的班级为了设置文本无效,您可以随时将类似以下内容添加到子类的WindowProc:
case WM_SETTEXT: {
LRESULT res = CallWindowProc(lpfnParent, hWnd, WM_SETTEXT, wParam, lParam);
InvalidateRect(hWnd, nullptr, true);
return res;
}
这样,每次设置控制文本时,都不需要无效。
相关文章:
- C 和 C++ 中开关语句的案例标签的常量值,但显示不同的行为
- 如何正确指定 goto 语句的标签?
- 使用g++静态初始化带有命名标签的嵌套C++结构
- 通过水平滚动条更改标签
- 从 QFontDatabase 设置 QFont 将所有标签设置为等宽字体?Qt C++
- "WM" C++是什么意思?
- 在C++中存储要输入的标签列表
- 如何在等效列表中查找最小的连接标签
- 标签检测鼠标单击 c++
- 无法将行编辑中的文本打印到 Qt C++ 中的标签
- 如何根据C++中的标签运行特定函数?
- C++ Expat 仅打印元素的第一个字母和标签中的数据
- 默认标签显然在 switch 语句中不起作用
- 在 gcc/clang (C++) 中获取函数范围之外的标签地址
- 在"printf"中使用标签"h"或"hh"是否涉及未定义的
- GTK 3 C++按钮中带有标签的图标
- 如何使QLineSeries/QXYSeries仅显示一个点标签
- SFINAE和标签调度之间的差异
- 如何在主窗口标签的对话框中显示QLineEdit的输入
- Qt - 将空指针(原始数据)转换为 QImage 并将其显示在标签上