问题标签 [wm-paint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Win32 c ++将RGB颜色迭代到WM_PAINT中的窗口
它对“单次”测量(通过“测量样本”按钮)非常有效。测量完成,所有收集的数据显示在界面上 a) 以图形形式,b) 数字形式和 c) 以“颜色”形式,如您在右侧的黄色大方块中所见(模拟) .
我开发的下一步是在屏幕上显示一系列 RGB 颜色,进行测量并将它们保存到文件中。为了做到这一点,我只需将测量设备连接到屏幕上,然后依次连接我需要的所有 RGB 颜色,每次都进行测量。
所以我添加了一个“测量屏幕”按钮。哪个使用此代码:
我“期望”代码工作的方式是,每个 Invalidate 调用都会向 WM_PAINT 事件发送一条消息,并以这种方式处理:
IOW,只要未引发“inProgress”标志,WM_PAINT 事件就会“正常”处理消息。只有当消息来自“MEASURE_SCREEN”函数时,矩形才会填充指定的 RGB 颜色(在全局范围内指定)。
好吧,这行不通?该函数遍历颜色 OK 并每次调用“Invalidate”,它会达到我的“InProgress”逻辑,但“新”颜色永远不会显示在屏幕上,直到控制退出该函数。
我一直在寻找如何做到这一点已经有一段时间了,我想我可能会寻求你的友好和耐心的帮助。