看板 java 關於我們 聯絡資訊
如題 我想按下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)
lvlightvivi:可能沒有repaint() 沒把panel放到視窗上 很多可能... 12/03 01:27
givemepass:可能需要你把完整code放上來 才能幫你debug 12/03 13:42
gozha:extends jpanel,override paint(Graphics g) ? 12/03 14:44
gozha:喔我沒看清楚= =拍寫XD 12/03 14:45