2010-11-15 100 views
0

我想編寫一個代碼來繪製一個填充的橢圓形,並在面板內點擊鼠標。我曾經開發過一些代碼,但不幸的是,當我嘗試進行下一次單擊時,整個面板消隱並出現新的點。我想保留以前的點並通過下一個用戶在面板上單擊來添加一些新點。我如何實現MyPanel的油漆組件?這是我的代碼;它不能正常工作,因爲它會產生一些小點而不是矩形。如何畫一個填充的橢圓形,點擊鼠標點擊Jpanel

class MyPanel extends JPanel { 
Point pointClicked; 

public MyPanel() { 
    this.addMouseListener(new MouseAdapter() { 
     @Override 
     public void mouseClicked(MouseEvent e) { 
      pointClicked = e.getPoint(); 
     } 
    }); 
} 
@Override 
public void paintComponent(Graphics g) { 
    super.paintComponent(g); 
    g.fillRect(pointClicked.x, pointClicked.y, 1, 1); 
} 
} 
+1

你可以添加一些你已經擁有的代碼,也許有隻是一些小錯誤。 – 2010-11-15 05:31:24

回答

3

我想保持以前的點和下一個用戶的在面板上單擊添加一些新的問題。

每次調用paintComponent()方法時,都需要跟蹤每個橢圓形並重繪所有橢圓。

退房Custom Painting Approaches爲兩種不同的方式來做到這一點