2011-08-28 17 views
1

我正在監視Vista上處於窗口模式的DirectX應用程序。 GetClientRect報告正確的大小,直到應用程序最小化和恢復,然後它總是返回預覽大小(106x160)。替代GetClientRect?

是否有任何其他方式來查詢窗口的客戶區比使用GetClientRect WinAPI?也許將消息發送到窗口,或檢查Windows對窗口客戶區的瞭解?

任何幫助,將不勝感激,如果你可以使用C#或.NET這將是一個獎金,但任何其他語言,會做

回答

1

我想你不應該調用GetClientRect應用程序最小化的時候,因爲它不會使很有道理,當最小化時,客戶區域根本不可見。

看這裏:How could I detect when my application is minimized?當然有一種方法來檢測窗口何時最小化,所以你可以避免在這種情況下使用GetClientRect

+0

我在應用程序恢復後調用GetClientRect,所以這並沒有多大幫助。我注意到,在調用GetClientRect 3分鐘後,維度最終被正確設置,這很奇怪,但這就是爲什麼我想知道是否有其他方式可以獲得客戶端矩陣。 –