Re: [問題] 關於actionperformed裡寫程式繪圖
※ 引述《PsMonkey (痞子軍團團長)》之銘言:
: ※ 引述《hubin (阿賓  NN)》之銘言:
: : 我是要寫個簡易的繪圖程式
: : 就是按下某一個Button(例如是畫drawRect或fillOval),
: : 有設handler及actionListener
: : 然後跑到另一個程式的actionPerformed
: : 那怎麼再actionPerformed裡去寫繪圖的程式呀?我寫都會出錯
: : 以下是我的部份程式碼:
: : public class itemHandler implements ActionListener{
: : public void actionPerformed(ActionEvent event){
: ^^^^^^^^^^^^^^^
: 這一行是 method 的寫法
: : public void paint(Graphics g){ //這行會出錯
: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
: 這一行也是 method 的寫法
: class 裡頭可以有 class,但是 method 裡頭理論上是不再定義一個 method 的
: : super.paint(g);
: : Graphics2D g2d = (Graphics2D)g;
: : g2d.drawLine(Painter.x1,Painter.y1,Painter.x2,Painter.y2);
: : }
: : repaint();
: : }
: : }
: 再者,回到物件的觀念
: 你的 paint() 是歸在一個 class 底下呢?
: (中文的說法是:哪一個物件才能操作的方法?)
: 你針對 ActionListener 定義 paint()
: 那... 是要他去 paint 啥? XDXD
:
嗯嗯~原來如此啊~
那有什麼方式就是不要把paint寫成method
仍然可以繪圖,像我把public void paint拿掉的話
往往都會出現g或g2d未定義的錯誤訊息……泣
: 上面的錯誤訊息為:Multiple markers at this line
: : -Syntax error on token "(",;expected
: : -Syntax error on token ")",;expected
: : 另外還有一個主程式,我是用那個主程式按下Button鍵跑來這個itemHandler
: : 主程式Painter沒有錯誤訊息。我真的想不到要怎麼改了~泣
: : 或是各位有什麼方法可以在actionPerformed裡寫繪圖的,使用者自己繪圖
: : 我上面的x1,y1,x2,y2是滑鼠按下、放開的座標值
: : 不知道有沒有表達的清礎~~
: : 希望大家幫幫忙~感恩,或者是~跟本就不能這樣寫……
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.206.17
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 3 之 12 篇):