[問題] 將圖形印到jPanel上

看板java作者 (呆)時間15年前 (2010/12/03 00:34), 編輯推噓3(301)
留言4則, 3人參與, 最新討論串1/2 (看更多)
如題 我想按下jbutton 會畫一個圓圈(drawOval(.......))在jPanel上 可是都畫不上去 我的程式碼如下: 畫圖的class: import java.awt.*; import javax.swing.*; public class print_picture extends JPanel { private String str[]= new String [5]; public print_picture(){ super(); } public void paint(Graphics g) { super.print(g); g.setColor(Color.red); g.fillOval(20, 20, 20, 20); public static void main(String args[]){ new print_picture(); } } 介面的class: button部分: jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { print_picture pict = new print_picture(); jScrollPane.add(pict); } }); jPanel部分: private JPanel getJPanel() { if (jPanel == null) { jPanel = new JPanel(); jPanel.setLayout(new GridBagLayout()); } return jPanel; } jScollPane部分: private JScrollPane getJScrollPane() { if (jScrollPane == null) { jScrollPane = new JScrollPane(); jScrollPane.setBounds(new Rectangle(0, 65, 405, 297)); jScrollPane.setViewportView(getJPanel()); } return jScrollPane; } 我是把程式分成兩個class去做 介面做一個 畫圖做一個 可是要介面這邊的button去接畫圖的class就怎麼也不成功 無法把圖畫到jpanel上 麻煩知道該怎麼做的大大告知一下 謝謝 PS:這篇有點長,但我絕對不是來騙P幣的, 問完如果有人覺得該砍,我會馬上砍掉 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.65.116 ※ 編輯: justbelieve 來自: 122.117.65.116 (12/03 00:35)

12/03 01:27, , 1F
可能沒有repaint() 沒把panel放到視窗上 很多可能...
12/03 01:27, 1F

12/03 13:42, , 2F
可能需要你把完整code放上來 才能幫你debug
12/03 13:42, 2F

12/03 14:44, , 3F
extends jpanel,override paint(Graphics g) ?
12/03 14:44, 3F

12/03 14:45, , 4F
喔我沒看清楚= =拍寫XD
12/03 14:45, 4F
文章代碼(AID): #1CzygiN9 (java)
文章代碼(AID): #1CzygiN9 (java)