Hi,
ich versuche gerade meine Buttons zu gestalten, da die Standartjavabuttons ja sehr hässlich sind.
Also habe ich mich rangemacht und eine neue Klasse erstellt die von JButton erbt erstellt.
Nun habe ich die paintComponent und die Methode paint überschrieben:
Das Ergebnis sind nur leider so aus, dass das Bild nicht gezeichnet werden, der String aber schon, warum?
MfG KingEldarion
ich versuche gerade meine Buttons zu gestalten, da die Standartjavabuttons ja sehr hässlich sind.
Also habe ich mich rangemacht und eine neue Klasse erstellt die von JButton erbt erstellt.
Nun habe ich die paintComponent und die Methode paint überschrieben:
Java:
public GButton(String text, int x, int y){
this.text = text;
setBounds(x, y, 250, 25);
addMouseListener(this);
setContentAreaFilled(false);
URL url = null;
try {
url = getClass().getClassLoader().getResource("pic/button.png");
backPic = ImageIO.read(url);
url = getClass().getClassLoader().getResource("pic/buttonHover.png");
hoverPic = ImageIO.read(url);
url = getClass().getClassLoader().getResource("pic/buttonClick.png");
clickPic = ImageIO.read(url);
}
catch (IOException e) {
System.out.println("Error: " + e);
new ErrorMessage("" + e);
}
}
@Override
public void paintComponent(Graphics g){
}
@Override
public void paint(Graphics g){
if(hover){
if(click){
g.drawImage(clickPic, getX(), getY(), null);
}
else
{
g.drawImage(hoverPic, getX(), getY(), null);
}
}
else
{
g.drawImage(backPic, getX(), getY(), null);
}
g.drawString(text, getX(), getY());
}
Das Ergebnis sind nur leider so aus, dass das Bild nicht gezeichnet werden, der String aber schon, warum?
MfG KingEldarion