Hallo,
ich schreibe grade mein erstes programm mit swing und awt und habe ein problem mit JButtons.
Da ich keine Ahnung habe an welcher Stelle das Problem liegt, hoffe ich dass es ok ist wenn ich einfach mal den ganzen code poste:
das ganze rufe ich dann von der main-klasse aus so auf:
so weit so gut, ab und zu funktioniert das ganze auch. allerdings nicht immer. die JButtons tauchen komischerweise nur bei ungefähr jedem zweiten aufruf des programms auf. Ich arbeite mit Netbeans und nach dem drücken des "Run Main Project"-Knopfes ist es reine glücksache, ob die buttons erscheinen oder nicht. Und das obwohl ich am code nichts ändere. Wenn die buttons nicht erschienen sind und ich die größe des Applet-Fensters ändere tauchen sie auf (allerdings gleich in mehrfacher ausführung).
Kann mir irgendjemand erklären woran das liegt und wie ich das beheben kann?
vielen dank schonmal!
Hier noch Systeminfos:
Product Version: NetBeans IDE 6.5 (Build 200811100001)
Java: 1.6.0_07; Java HotSpot(TM) Client VM 10.0-b23
System: Windows Vista version 6.0 running on x86; Cp1252; de_DE (nb)
ich schreibe grade mein erstes programm mit swing und awt und habe ein problem mit JButtons.
Da ich keine Ahnung habe an welcher Stelle das Problem liegt, hoffe ich dass es ok ist wenn ich einfach mal den ganzen code poste:
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class DrawPanel extends JPanel{
private JButton book;
private JButton stats;
protected JButton admin;
@Override
public void paintComponent(Graphics g){
super.paintComponent(g);
int width = getWidth();
int height = getHeight();
g.setColor(Color.BLACK);
g.fillRect(0, 36, width, 3);
book = new JButton ("Booking");
book.setVisible(true);
add (book);
stats = new JButton("Statistics");
stats.setVisible(true);
add(stats);
admin = new JButton("Admin");
admin.setVisible(true);
add(admin);
setVisible(true);
}
}
das ganze rufe ich dann von der main-klasse aus so auf:
Code:
DrawPanel x = new DrawPanel();
JFrame application = new JFrame("Flight Reservation System");
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
application.add(x);
application.setSize(650,500);
application.setVisible(true);
so weit so gut, ab und zu funktioniert das ganze auch. allerdings nicht immer. die JButtons tauchen komischerweise nur bei ungefähr jedem zweiten aufruf des programms auf. Ich arbeite mit Netbeans und nach dem drücken des "Run Main Project"-Knopfes ist es reine glücksache, ob die buttons erscheinen oder nicht. Und das obwohl ich am code nichts ändere. Wenn die buttons nicht erschienen sind und ich die größe des Applet-Fensters ändere tauchen sie auf (allerdings gleich in mehrfacher ausführung).
Kann mir irgendjemand erklären woran das liegt und wie ich das beheben kann?
vielen dank schonmal!
Hier noch Systeminfos:
Product Version: NetBeans IDE 6.5 (Build 200811100001)
Java: 1.6.0_07; Java HotSpot(TM) Client VM 10.0-b23
System: Windows Vista version 6.0 running on x86; Cp1252; de_DE (nb)