我想要一個JLabel繪製一個圓圈。我已經有一些代碼,但圓圈不畫,我在這裏做錯了什麼?自定義JLabel繪製一個圓圈
public class TowerMarker extends JLabel
{
private int x, y, id;
private ImageIcon ic;
private String ql;
public TowerMarker(int id, int x, int y, ImageIcon ic, String ql)
{
this.x = x;
this.y = y;
this.ic = ic;
this.ql = ql;
setBounds(x, y, 40, 85);
setIcon(ic);
setToolTipText("QL: "+ql);
updateUI();
}
@Override
public int getX()
{
return x;
}
@Override
public int getY()
{
return y;
}
public String getQL()
{
return ql;
}
public ImageIcon getImageIcon()
{
return ic;
}
public int getID()
{
return id;
}
@Override
public String toString()
{
return x+":"+y+":"+ql;
}
@Override
public void paintComponent(Graphics g)
{
g.setColor(Color.red);
g.drawOval(x, y, 20, 20);
ui.update(g, this);
}
}
擺脫使用代碼更新(...)的。這是可以完成的事情在使用AWT時,但在Swing中不需要。張貼您的[SSCCE](http://sscce.org),證明問題。 – camickr