【发布时间】:2014-01-14 13:47:45
【问题描述】:
我有一个我想用 winapi 修改的 opencv 窗口。我想更改窗口的最小值。我该怎么做?
【问题讨论】:
-
你的问题不是很清楚。 “我有一个opencv窗口”是什么意思?您的“c++ 项目”是另一个进程/应用程序吗?
我有一个我想用 winapi 修改的 opencv 窗口。我想更改窗口的最小值。我该怎么做?
【问题讨论】:
一种方法是使用带有WH_CBT 值的SetWindowsHookEx 安装CBT Hook idHook 参数。
引用 MSDN:
HCBT_MOVESIZE 窗口即将被移动或调整大小。 w参数: 指定要移动或调整大小的窗口的句柄。 l 参数: 指定一个指向 RECT 结构的长指针,该结构包含 窗口的坐标。通过改变结构中的值,一个 CBTProc钩子程序可以设置窗口的最终坐标
【讨论】:
您必须对窗口进行子类化,这意味着交换窗口过程函数指针,处理您感兴趣的一条消息,并将所有其他消息转发到原始窗口过程。
有关详细信息,请参阅 MSDN Subclassing Controls。
【讨论】: