2011-07-19 46 views
-2

從一個Java應用程序出現窗口。窗口整體調整大小,但客戶區域內部仍然相同_WinAPI_SetWindowPos不更新WinClient區域

+0

_WinAPI_SetWindowPos(「window」,0,0,validw,validh)它只是包裝winapi函數。沒有旗幟,也嘗試過旗幟。客戶端不會重新調整此caall。我用這個func 1000次btw – Marko29

回答

0

當您將SWP_NOREDRAW標誌傳遞給SetWindowPos時會出現這種情況。通過刪除此標誌來解決問題。

+0

我從來沒有設置這個標誌我自己,我怎麼能刪除它? – Marko29

+2

@ Marko29嗯,我不知道如何刪除它,因爲你沒有向我們顯示任何代碼。更重要的是,'_WinAPI_SetWindowPos'似乎來自你沒有提及的Autoit。我想你應該編輯你的問題,並告訴我們完整的故事。 –

+0

@Marko你還對這個問題感興趣嗎? –

1

您沒有將正確數量的參數傳遞給_WinAPI_SetWindowPos。根據該文件下面應該是正確的:

​​

iflags應該包含$SWP_NOZORDER,如果你不想把窗口的頂端。我不確定您使用「窗口」作爲窗口句柄是否正確,我不傾向於繼續研究該主題。

請記住,如果您繼續使用錯誤的標籤併發布模糊問題,則不太可能會得到任何相關答案。

+0

我正在傳遞參數。我說過調整窗口的大小,但不是客戶端,爲什麼很難猜測錯誤的參數不是問題? – Marko29

+0

@ marko29 1)您發佈的「代碼」似乎錯誤地傳遞了寬度和高度,因爲您沒有包含第二個窗口句柄。 2)您尚未發佈任何其他相關代碼,以便提供有關哪些問題難以準確評估問題的線索。 –