1
A
回答
2
有沒有辦法「撤銷」或「擦除」,你做XOR一個BitBlt的或任何其他圖形輸出(除非常特殊情況基於圖形的繪圖,您可以通過在原始頂部執行另一個異或繪製操作來撤消該繪圖)。
你可以做的唯一事情就是在上面畫一些其他東西,這就是你所說的「補丁」。通常情況下,您可以繪製窗口背景色的實心矩形。這正是OnEraseBkgrnd
消息處理程序默認執行的操作,它在OnPaint
之前運行。具體來說,它使用窗口類的背景畫筆,通常是使用COLOR_3DFACE
(用於對話框)或(用於窗口)系統顏色繪製的畫筆。
當然,你總是可以只是而不是首先做BitBlt。 全部繪畫代碼應該總是去掉裏面的OnPaint
消息處理函數,所以沒有辦法可以最終得到「陳舊」的圖形。每當窗口需要重新繪製時,就會調用該函數,並且該函數內的代碼將重新繪製窗口。如果你不希望它被繪製位圖,請不要調用BitBlt。
如果你已經使用臨時CDC
對象(你通常應不做),你可以強制使用做了BitBlt的上你的窗口的頂部通過觸發窗口的重繪被刪除。最簡單的方法是使用窗口的InvalidateRect()
成員函數;通過NULL
作爲指向要失效的矩形的指針將使窗口的整個客戶區失效,或者可以使您blitting的區域失效。
相關問題
- 1. PHP:如何刪除輸出?
- 2. 如何在MFC中刪除行
- 3. 刪除MFC中的菜單
- 4. VS 2008 MFC - 刪除MFC處理程序
- 5. 如何從json輸出中刪除[「」]?
- 6. 如何刪除heatmap.2輸出
- 7. 如何從輸出中刪除括號?
- 8. 刪除ANS輸出
- 9. 如何複製BitBlt?
- 10. 如何從'tf diff'輸出中刪除排除的更改?
- 11. 級聯刪除SQL輸出
- 12. sp_helptext輸出被ADO.NET刪除?
- 13. Snakemake:刪除輸出文件
- 14. 刪除Netmiko自動輸出
- 15. 刪除輸出顏色
- 16. C刪除printf輸出
- 17. Gulp:如果源已被刪除,如何讓gulp自動刪除輸出文件?
- 18. 如何刪除python輸出中的任何重複項
- 19. 如何刪除MFC中CPropertySheet中的默認幫助按鈕?
- 20. 如何刪除文件的只讀屬性MFC
- 21. MFC:從刪除輸入指針到它ControllingFunction停止線程
- 22. 的ColdFusion刪除不必要的輸出
- 23. 如何刪除window.alert彈出?
- 24. 如何刪除Python中輸出文件中的重複條目?
- 25. 如何從PHP輸出的字符串中刪除單詞?
- 26. 如何刪除perl CGI腳本中的前一個輸出?
- 27. 如何刪除控制檯輸出上的java.awt.Point
- 28. 如何從shell命令的輸出中刪除%
- 29. 如何從Neo4j中刪除類的元數據 - Json輸出
- 30. 如何從杜-h輸出的末尾刪除文件名