2016-03-21 12 views
0
JFrame frame = new JFrame(); 
    JButton button = new JButton("Compute!"); 
    JProgressBar bar = new JProgressBar(0, nOstudents); 
    bar.setValue(0); 
    frame.setLayout(new FlowLayout()); 

    add(button); 
    add(bar); 

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.setSize(400, 300); 
    frame.setVisible(true); 
    frame.setTitle("sGen 2.0"); 

Fehlermeldung:Herstellung Fortschrittsbalken mit der Taste über JFrame

Generate.java:209: error: cannot find symbol 
    add(button); 
    ^
    symbol: method add(JButton) 
    location: class Generate 
Generate.java:210: error: cannot find symbol 
    add(bar); 
    ^
    symbol: method add(JProgressBar) 
    location: class Generate 

Grundsätzlich versuchen, einen Knopf zu machen, die eine Berechnung innerhalb des Programms gestartet und zeigt ein Fortschrittsbalken. Unter diesem Code habe ich eine Methode wie folgt:

for (int i = 0; i < nOstudents; i++) { 
     bar.setValue(i+1); 

    //do stuff 
    } 
    } 

Es dauert eine ganze Weile zu berechnen, so möchte ich einen Fortschrittsbalken den Fortschritt zeigt. Wie auch immer, ich bin nicht 100% sicher, wenn ich den Fortschrittsbalken richtig benutze und ein Problem mit dem JFrame im Allgemeinen, das ich falsch implementiert habe, da ich die Fehlermeldung bekomme, wenn ich Dinge zum Frame hinzufügen möchte

+0

Es sollte '(Komponente) frame.add werden;' oder brauchen Sie 'JFrame' statt der Schaffung' JFrame' Objekt zu erweitern. –

+0

Sie müssen 'frame.add (button)' und 'frame.add (bar)' ausführen, da Sie es als Variable deklarieren. –

+1

Wenn Sie die gelöschte Frage markieren möchten, klicken Sie auf das transparente Häkchen neben der Antwort, die Ihnen am besten geholfen hat – MadProgrammer

Antwort

1

Sie müssen die button und die bar zu etwas hinzufügen. Wie

frame.add(button); 
frame.add(bar); 

oder

Container panel = frame.getContentPane(); 
panel.add(button); 
panel.add(bar); 
Verwandte Themen