2010-03-01 39 views
0

即時通訊使用SetPixel在我的窗口上做東西,這是最簡單的,因爲我只想一次設置一個像素。 SetPixel是偉大的,但我需要刪除每次我更新它的顏色,我可以用黑色覆蓋顏色,但是..這是一個非常大的時間浪費,有什麼方法可以將所有的顏色寫入黑色? (我想要更快的東西,然後將它們重新設置爲黑色)。我製作了一個窗口,然後用setpixel着色(還有其他方法(在窗口上繪製),但我只想每次設置一個像素/顏色)如何刪除setpixel放在窗口上? (C++)

回答

1

您通常應該創建一個位圖,鎖定它,設置並直接取消其像素 - 可能通過直接訪問而不是使用API​​調用,如果有很多更新 - 解鎖,然後使窗口無效,以便您的繪圖處理程序可以稍後blit位圖。

如果要恢復像素,可以保留兩個位圖並將值存儲在一個位圖中。