當前位置:編程學習大全網 - 編程軟體 - 學習到win32的子窗口編程,好難理解啊(主要是不清楚子窗口和主窗口的關系)

學習到win32的子窗口編程,好難理解啊(主要是不清楚子窗口和主窗口的關系)

100分,肥。

窗口句柄(HWND)都是由操作系統內核管理的,系統內部有壹個z-order序列,記錄著當前從屏幕底部(假象的從屏幕到眼睛的方向),到屏幕最高層的壹個窗口句柄的排序,這個排序不關註父窗口還是子窗口。

當任意壹個窗口接受到WM_PAINT消息產生重繪,更新區繪制完成以後,就搜索它的前面的壹個窗口,如果此窗口的範圍和更新區有交集,就向這個發送wm_paint消息,周而復始,直到執行到頂層窗口。才算完成。

對於壹個對話框(主窗口來說,其所有子窗口都在他的前面——也就是更靠近眼睛的位置),所以主窗口接受wm_paint繪制完成後,會引起更新區上所有子窗口的重繪(所有子窗口也是從底到外排序的)。

無所謂誰管,每個窗口都是對等的,都有自己的消息相應函數,只不過屬性不同。

邏輯上可以這麽理解,但其實,操作系統是按主窗口排序,然後壹個主窗口的所有子窗口是等級的,它們再壹個排序。所以邏輯上可以說,系統中所有窗口句柄都有個排序。

  • 上一篇:按鍵向導找出條件還是其他編程找出條件?
  • 下一篇:Excel 求助大神,如何用VBA獲取HTML中<head>裏面的內容
  • copyright 2024編程學習大全網