父視窗與擁有者視窗的一點思考

2021-10-07 21:30:34 字數 364 閱讀 2666

在windows系統中,系統會為每個視窗都維護乙個視窗物件(即乙個資料結構)。這個資料結構的成員就含有owner和parent,分別是視窗的擁有者視窗和父視窗。

所以兩個視窗可能存在兩種關係:①父子關係 ②擁有與被擁有

當建立視窗時如果視窗的屬性為ws_popup,那麼其指定的父視窗其實就是其owner視窗。(就是在引數hwnd指定的父視窗實際是其owner視窗)

可以通過setparent()為其設定真正的父視窗。

當建立視窗時如果視窗的屬性為ws_child,那麼其指定的父視窗就是其parent視窗

子視窗與父視窗的訊息傳遞

昨天碰到乙個問題,如果乙個dialog上有乙個edit控制項,這時候對edit輸入文字是edit先得到的按鍵訊息還是父視窗先得到?如果要攔截乙個edit的回車訊息,在沒有為edit派生新的類的情況下,網上大部分的做法是過載父視窗的pretranlatemessage 在這裡對按鍵訊息進行攔截,但是大...

JS新視窗與父視窗的互動

我們經常會在後台中使用iframe,有時候需要window.open url,title,option 來開啟新視窗,那麼新視窗如何跟父視窗進行互動呢。設定父視窗表單add中intro的值為desc parent.opener.document.add.intro.value desc parent...

視窗重繪一點通

視窗重繪函式心得 在重新整理視窗時經常要呼叫重繪函式 mfc提供了三個函式用於視窗重繪 invalidaterect rect invalidate updatewindow 當需要更新或者重繪視窗時,一般系統會發出兩個訊息wm paint 通知客戶區有變化 和wm ncpaint 通知非客戶區有變...