全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2293
推到 Plurk!
推到 Facebook!

請問我在畫線時,Image會一直閃的問題

尚未結案
kochen
一般會員


發表:8
回覆:5
積分:2
註冊:2004-09-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-04 02:33:19 IP:211.76.xxx.xxx 未訂閱
我想作一個像小畫家的東西 只是我是要在圖層上面畫圖 當我在拉線時,因為如果我沒有用兩個image去一直蓋到原來影像.線就會擠成一堆.. 我的程式碼如下 Image2->Picture = Image1->Picture 當mouse move時, 我會一直 Image1->Picture = Image2->Picture Image1->Canvas->MoveTo(StartX,StartY); Image1->Canvas->LineTo(X,Y); 這樣就不會線擠成一堆 在mouse up時 我也是一樣 Image1->Picture = Image2->Picture Image1->Canvas->MoveTo(StartX,StartY); Image1->Canvas->LineTo(X,Y); 可是這樣閃爍的非常嚴重... 我是想到一個解決的方法 就是抓取每一個mouse down的StartX和startY 然後當mouse move時,就把StartX,StartY,X,Y的值給記錄起來後 在Image2中把Image1中的StartX,StartY,X,Y給複製過去 然後當mouse move拉線時.只要讓那"一小塊"去閃爍就好 因為找不到有虛線的功能..所以我都是這樣子拉的... 不過 要記錄那一小塊,再複制過去..這邊開始我就不知道該怎麼去做了 看過板上有一個getImage的指令 可是BCB6沒有... 不知道有沒有什麼已經寫好的函數可以讓我引用 或是能指點我一下該如何解決 謝謝 發表人 - taishyang 於 2004/10/04 09:10:43
kochen
一般會員


發表:8
回覆:5
積分:2
註冊:2004-09-05

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-04 03:03:30 IP:211.76.xxx.xxx 未訂閱
引言: 我想作一個像小畫家的東西 只是我是要在圖層上面畫圖 當我在拉線時,因為如果我沒有用兩個image去一直蓋到原來影像.線就會擠成一堆.. 我的程式碼如下 Image2->Picture = Image1->Picture 當mouse move時, 我會一直 Image1->Picture = Image2->Picture Image1->Canvas->MoveTo(StartX,StartY); Image1->Canvas->LineTo(X,Y); 這樣就不會線擠成一堆 在mouse up時 我也是一樣 Image1->Picture = Image2->Picture Image1->Canvas->MoveTo(StartX,StartY); Image1->Canvas->LineTo(X,Y); 可是這樣閃爍的非常嚴重... 我是想到一個解決的方法 就是抓取每一個mouse down的StartX和startY 然後當mouse move時,就把StartX,StartY,X,Y的值給記錄起來後 在Image2中把Image1中的StartX,StartY,X,Y給複製過去 然後當mouse move拉線時.只要讓那"一小塊"去閃爍就好 因為找不到有虛線的功能..所以我都是這樣子拉的... 不過 要記錄那一小塊,再複制過去..這邊開始我就不知道該怎麼去做了 看過板上有一個getImage的指令 可是BCB6沒有... 不知道有沒有什麼已經寫好的函數可以讓我引用 或是能指點我一下該如何解決 謝謝
我已找到解決問題 Form1->DoubleBuffered=true ; 即可
系統時間:2024-05-02 23:00:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!