移動圖片時,會發生殘影的現象!!要怎處理? |
答題得分者是:wameng
|
bcshahuo
一般會員 發表:28 回覆:28 積分:11 註冊:2005-01-25 發送簡訊給我 |
//移動設定 rx_left := x - round(rxgifanimator1.width / 2);
While rxgifanimator1.Left <> rx_left Do Begin
If rx_left > rxgifanimator1.Left Then Begin
rxgifanimator1.Left := rxgifanimator1.Left 1
End
Else Begin
rxgifanimator1.Left := rxgifanimator1.Left - 1
End;
For i := 1 To 10 Do Begin
rxgifanimator1.Repaint;==>會發生殘影
End;
End; 這是小弟的片段程式碼,當我想移動圖片時,會發生殘影?
不知道有什麼好方法可以解決。 如果我改成在form的Refresh,會發生一直閃的現象。 如何能正常移動圖片呢?
|
chris_shieh
高階會員 發表:46 回覆:308 積分:240 註冊:2004-04-26 發送簡訊給我 |
|
bcshahuo
一般會員 發表:28 回覆:28 積分:11 註冊:2005-01-25 發送簡訊給我 |
|
wameng
版主 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
|
bcshahuo
一般會員 發表:28 回覆:28 積分:11 註冊:2005-01-25 發送簡訊給我 |
|
wameng
版主 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
|
bcshahuo
一般會員 發表:28 回覆:28 積分:11 註冊:2005-01-25 發送簡訊給我 |
引言: DoubleBuffered := True 是在 Form.Create 事件中處理的。 忘了!我把圖片閃爍及您的殘影搞混了。 使用Image 元件是不會有殘影的。 可能是您使用 rxgifanimator 元件的關係。 我使用 GifImageLite 及將Image.TransParent := True 就沒有這個問題。 我重來不用 rxLib 。 Sorry!..For i := 1 To 10 Do Begin rxgifanimator1.Refresh; image1.Refresh; End; End; End; procedure Tstart_map.FormCreate(Sender: TObject); begin start_map.DoubleBuffered := True end; 板主大大,我覺得是我搞錯了。因為 我再用一張image的元件放圖,結果兩張都會有殘影。 我是在迴圈中放Refresh,讓他看起來有在移動。 |
bcshahuo
一般會員 發表:28 回覆:28 積分:11 註冊:2005-01-25 發送簡訊給我 |
引言:板主大大,感謝你,我發現問題了 因為我是圖片重整所以一直有殘影 如果form.Refresh; DoubleBuffered := True 就行了, 非常之感謝~~~^^(每天都得麻煩你,歹勢@@)引言: DoubleBuffered := True 是在 Form.Create 事件中處理的。 忘了!我把圖片閃爍及您的殘影搞混了。 使用Image 元件是不會有殘影的。 可能是您使用 rxgifanimator 元件的關係。 我使用 GifImageLite 及將Image.TransParent := True 就沒有這個問題。 我重來不用 rxLib 。 Sorry!..For i := 1 To 10 Do Begin rxgifanimator1.Refresh; image1.Refresh; End; End; End; procedure Tstart_map.FormCreate(Sender: TObject); begin start_map.DoubleBuffered := True end; 板主大大,我覺得是我搞錯了。因為 我再用一張image的元件放圖,結果兩張都會有殘影。 我是在迴圈中放Refresh,讓他看起來有在移動。 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |