2013-03-27 83 views
1

鉴于从QMainWindow的继承一个窗口单独-接壤,如何让它单独-镶上在Windows?
我检索其窗口句柄的想法,但我不知道该怎么做。无论如何,如果有方法天然Qt的一个(的组合),将理解的。
在此先感谢。
编辑:
我已经试过代码QT做一个窗口在Windows

HWND hWnd = (HWND)this->winId(); // the handle 
unsigned old_styles = WS_OVERLAPPEDWINDOW & (~WS_THICKFRAME) | WS_VISIBLE; 
SetWindowLongPtr(hWnd, GCL_STYLE, old_styles); 
SetWindowPos(hWnd, HWND_TOP, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE 
| SWP_NOZORDER | SWP_FRAMECHANGED); 
UpdateWindow(hWnd); 

,它不会尽管窗口句柄的工作是正确的。

+0

什么是“单-接壤”呢? – cmannett85 2013-03-27 14:14:32

回答

1

设置一个Qt :: WA_NativeWindow每个属性窗口小部件要访问或调用将返回你的手柄的QWidget的:: winId()方法(和在这之前创建它)。

HWND hWidget = (HWND)pWidget->winId(); 

得到句柄,你可以改变/设置任何标志到这个窗口,不是吗? 至于我记得,WS_BORDER标志是一个负责的:

WS_BORDER 0x00800000L The window has a thin-line border. 
+0

winId()是真的很有帮助。谢谢。 – alexdelphi 2013-03-27 14:28:47