作者QQrzQQ (QQ)
看板Programming
标题[问题] OpenCV 视窗属性控制
时间Tue Sep 6 23:37:45 2011
想要写一个图示压在另一个AP上面
所以想说实现一个无边 没有标题 透明的视窗
Layout在另一个AP上
但是实现以後 在某些电脑OK
某些电脑就会无效
不知道是写法还是软硬体的问题
以下是我的程式码
// ################################################
cvNamedWindow("status", 0);
Window = (HWND) cvGetWindowHandle("status");
Window = GetParent(Window) ;
// 透明视窗
style = GetWindowLong( Window, GWL_EXSTYLE);
style = style | WS_EX_LAYERED;
SetWindowLong( Window, GWL_EXSTYLE, style);
SetLayeredWindowAttributes(Window, RGB(255,255,255), 0, LWA_COLORKEY);
// 无边框无标题
style = GetWindowLong(Window, GWL_STYLE);
style = style & (~WS_CAPTION) & ~(WS_BORDER) & ~WS_THICKFRAME;
SetWindowLong( Window, GWL_STYLE, style);
// always on top
SetWindowPos( Window, HWND_TOPMOST, 0, 0, 0, 0, TOPMOST_FLAGS);
cvShowImage( "status", status);
// ####################################
目前感觉 会失效的片段 是 "无边框无标题" 那一段
在不同电脑上的 OS 都是 XP
编译器都是 Visual 2008
显示卡都是 nVidia CPU都是Intel系列的
i5+(GeForce9800/GT430) 视窗边框消不掉
E4300+GeForce6xxx 显示正常
不确定是语法还是硬体的问题 想问问看有经验的大家
先谢谢大家了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.37.162.208
1F:→ QQrzQQ:自己推一下好了~是window传统样式和XP样式 114.37.141.248 09/13 05:41
2F:→ QQrzQQ:的问题 改变一下桌面主题设定就OK了 114.37.141.248 09/13 05:41