導航:首頁 > 圖片大全 > mfc如何自動移動圖片

mfc如何自動移動圖片

發布時間:2023-09-19 20:17:11

A. 用VS2010MFC製作簡易畫圖程序,為何畫出來的矩形是重影,如何解決拖動工具欄以後,圖片就自動

是這樣的,MFC創建的窗口,在接收到「重繪」消息的時候會擦除窗口的內容並繪制控制項的圖案(這意味著如果你不是在重繪消息的處理函數中繪制圖形,那麼圖形被擦除後也不會再恢復),而在其它情況下窗口是不會擦除內容並重繪的。所以如果你只是在滑鼠拖拽的事件中繪制矩形的話,繪制新矩形之前舊的矩形是不會被擦掉的。然而,也不能簡單地使窗口重繪來到達目的,因為那樣會導致之前已經繪制好的所有圖形被擦掉,最後窗口只剩下最新繪制的矩形。要達到畫圖的目的,你得將已繪制好的圖案儲存在內存中(以點陣圖的形式),而正在繪制的矩形則只在窗口上繪制,不在內存中的點陣圖中繪制,而當當前的圖形完全確定(即松開滑鼠)時,再將它繪制入內存中的點陣圖。這樣處理後,就可以在滑鼠拖動過程中(需要實時刪除之前的圖形)放心地使窗口重繪(這會使之前的圖像被擦除,不會留下痕跡),然後在重繪消息處理函數中(擦除過程由MFC框架自動完成,你的處理函數會在擦除後被調用,負責繪制圖案)將內存中的圖案復制到窗口上,這使得之前已經確定的圖案重新被顯示。最後再向窗口中繪制當前還未確定的圖形。至於具體實現,主要途徑就是創建內存畫布,網頁搜索「MFC雙緩沖繪圖」,你會得到通過暫時在內存中繪圖,最後再向屏幕復制圖案以防止重繪時窗口閃爍的方法,在它的基礎上稍加改動(例如將點陣圖對象從臨時改為全局以保留圖像,請結合自己的思考修改其它部分)即可實現畫圖的功能。過程中請務必記住,窗口上的圖像很容易就會因遮擋或重繪而消失,而且不方便針對性地刪除某一個與其它圖案重疊的圖形,所以需要在內存中保存你希望保存的圖像。

閱讀全文

與mfc如何自動移動圖片相關的資料

熱點內容
蜘蛛俠與超人高清圖片 瀏覽:739
光威釣椅價格及圖片 瀏覽:227
格子新款衣服圖片 瀏覽:512
鞋托圖片大全 瀏覽:604
網頁圖片收費如何改代碼 瀏覽:20
黑頭發掛耳染圖片男生 瀏覽:501
不健全的關系動漫圖片可愛 瀏覽:726
乳房怎麼變小圖片大全 瀏覽:378
大沙魚簡筆畫圖片大全 瀏覽:972
游樂場衣服圖片 瀏覽:547
偷笑的所有圖片大全 瀏覽:454
巫師衣服搭配圖片 瀏覽:290
燙37分發型男圖片 瀏覽:543
男生霸氣超拽圖片二次元 瀏覽:115
雙胞胎推車圖片及價格 瀏覽:889
怎麼復制淘寶的圖片 瀏覽:709
jpg怎麼壓縮圖片大小 瀏覽:471
長臉明星短發發型圖片 瀏覽:609
貓睡覺的圖片可愛 瀏覽:15
盤旋發型圖片 瀏覽:217