2007年10月19日 星期五

OVER!!













心得:

一開始想說能不能直接用拖曳的方式拉出一塊長方形,就像小畫家裡的那樣

試了n次都沒成功,只會在image裡面拉線、畫"字"

( 字也可以在畫布上畫出來 )
最多就是利用拉線的方式繪出一個矩形,可是要怎麼在裡面著色也是個問題
要能從畫出來的矩形抓到四個點的坐標,怎麼抓還在查





















拉直線+寫字:
Image1->Canvas->MoveTo(0,0);
Image1->Canvas->LineTo(100,100);
Image1->Canvas->TextOut(100,100,"Who");// 寫字





















畫矩形:
Image1->Canvas->MoveTo(0,0);
Image1->Canvas->LineTo(0,100);
Image1->Canvas->MoveTo(0,100);
Image1->Canvas->LineTo(100,100);
Image1->Canvas->MoveTo(100,100);
Image1->Canvas->LineTo(100,0);
Image1->Canvas->MoveTo(100,0);
Image1->Canvas->LineTo(0,0);


這是用直線拉出來的正方形
不過Canvas裡有提供畫矩形、圓形等的功能
自己上網找一下應該就會有了
要用直線拉出一個圓會死人吧 (汗!



作業的部份,東西都照抄教授給的就好了 = ="
只有一開始還沒講怎麼混色的時候比較頭大
雖然有想到要用RGB,不過當初是想用for迴圈畫出來,
方法很爛而且很麻煩,所以就在那邊耗時間等教授給答案 XD



題外話:
有找到可以用滑鼠畫線的方法
要在自己的Image的屬性裡設定event
MouseDown:
Drawing = true;
Canvas->MoveTo(X, Y);

MouseUp:
Canvas->LineTo(X, Y);
Drawing = false;

MouseMove:
if (Drawing)
Canvas->LineTo(X, Y);


可以自己試著玩看看
不過這個部份很奇怪,
滑鼠游標一定要在Image裡面才能開始畫是因為有指定,
可是畫出來的線起始位置跟滑鼠游標差了十萬八千里

紅色的是游標的始末位置
和移動軌道
黑色的是畫出來的線
要怎麼解決目前還不知道

1 則留言: