0
我試圖在我的JPanel中畫圖,但每次點擊時,我的JPanel背景都消失了。它在鼠標所在的位置繪製一條線。我認爲它與2D圖形有關 有人可以幫忙嗎?Swing - JPanel背景顏色消失
public Brush() {
addMouseListener(this);
addMouseMotionListener(this);
setBackground(Color.white);
}
@Override
public void paintComponent(Graphics g) {
Graphics2D g2;
// super.paintComponent(g);
g2 = (Graphics2D) g;
g2.setColor(brushColor);
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2.setStroke(new BasicStroke(8, BasicStroke.CAP_ROUND, BasicStroke.JOIN_BEVEL));
//Ellipse2D.Double circle = new Ellipse2D.Double(p1.x,p1.y,20,20);
g2.fillOval(p1.x,p1.y,20,20);
}
@Override
public void mousePressed(MouseEvent e) {
dragging = true;
p1 = e.getPoint();
repaint();
}
@Override
public void mouseReleased(MouseEvent e) {
dragging = false;
p1 = e.getPoint();
repaint();
}
@Override
public void mouseDragged(MouseEvent e) {
if (dragging) {
p1 = e.getPoint();
repaint();
}
}
但是當我這樣做時,畫橢圓消失? –
@RafVandelaer:你畫錯了。請參閱編輯。 –
我不明白,你有沒有例子? 我也希望直接繪製點,所以不是在你釋放鼠標按鈕後才能繪製。 –