Swing JPanel mit JLabel spinnt?

Hi,
ich hab ein Programm geschrieben und möchte am Ende einen Enddialog (also ... Aufgaben richtig, ... falsch, etc.).

Wenn ich das JPanel aber öffne, kommt "nur" ein JLabel mit den dazugehörigen Einstellungen(hab grad vergessen wie mans nennt, siehe Screenshot im Anhang). Vielleicht sind die anderen JLabels auch da, nur nach hinten verschoben.

Meine Ideen waren, dass es daran liegen könnte, dass ich einige JLabels als static deklariert habe oder in die JLabels auch Integer aus einer anderen Klasse anzeige, NetBeans hat mir zuerst da auch ein Fehler gezeigt, wenn man dann aber noch einen String anhängt geht's.

Vielen Dank im Voraus,
FranzvonAssisi


//Edit: Ich denke der erste Teil des Codes ist der wichtigere, der untere wurde von Netbeans generiert...


Und hier noch der Code für das Panel:
Java:
package test.de;

/**
 *
 * @author Franz
 */

public class Ende extends javax.swing.JPanel {


        
        public static int int_rounds = 0;
        
  
    
        
    public static void showcounters() {
        
        int_rounds++;
        
        all.setText(Abfragepanel.rcounter + " ");
        solved.setText(Abfragepanel.right + " ");
        notsolved.setText(Abfragepanel.wrong + " ");
        rounds.setText(rounds + " ");
        
    }    
   
    
    public Ende() {
        initComponents();
        showcounters();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        backtohome1 = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();
        backtohome2 = new javax.swing.JButton();
        all = new javax.swing.JLabel();
        solved = new javax.swing.JLabel();
        notsolved = new javax.swing.JLabel();
        rounds = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        label = new javax.swing.JLabel();

        setBackground(new java.awt.Color(185, 244, 239));

        backtohome1.setFont(new java.awt.Font("Minion Pro", 0, 24)); // NOI18N
        backtohome1.setText("Zurück zum Hauptmenü");
        backtohome1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                backtohome1ActionPerformed(evt);
            }
        });

        jLabel1.setFont(new java.awt.Font("Minion Pro", 0, 28)); // NOI18N
        jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel1.setText("Runde beendet!");

        backtohome2.setFont(new java.awt.Font("Minion Pro", 0, 24)); // NOI18N
        backtohome2.setText("Noch eine Runde");

        all.setFont(new java.awt.Font("Minion Pro", 0, 18)); // NOI18N
        all.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        all.setText("Aufgaben gerechnet.");

        solved.setFont(new java.awt.Font("Minion Pro", 0, 18)); // NOI18N
        solved.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        solved.setText("richtig");

        notsolved.setFont(new java.awt.Font("Minion Pro", 0, 18)); // NOI18N
        notsolved.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        notsolved.setText("und falsch");

        rounds.setFont(new java.awt.Font("Minion Pro", 0, 18)); // NOI18N
        rounds.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        rounds.setText("Runden");

        jLabel2.setFont(new java.awt.Font("Minion Pro", 0, 18)); // NOI18N
        jLabel2.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel2.setText("Du hast:");

        jLabel3.setFont(new java.awt.Font("Minion Pro", 0, 18)); // NOI18N
        jLabel3.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        jLabel3.setText("Davon waren");

        label.setFont(new java.awt.Font("Minion Pro", 0, 18)); // NOI18N
        label.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        label.setText("von");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(806, 806, 806)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(backtohome1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(backtohome2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(all, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(solved, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(notsolved, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(rounds, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jLabel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(label, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addContainerGap(837, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGap(72, 72, 72)
                .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 64, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(51, 51, 51)
                .addComponent(jLabel2)
                .addGap(33, 33, 33)
                .addComponent(all)
                .addGap(67, 67, 67)
                .addComponent(jLabel3)
                .addGap(18, 18, 18)
                .addComponent(solved)
                .addGap(18, 18, 18)
                .addComponent(notsolved)
                .addGap(59, 59, 59)
                .addComponent(label)
                .addGap(18, 18, 18)
                .addComponent(rounds)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 149, Short.MAX_VALUE)
                .addComponent(backtohome2, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(backtohome1, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(156, 156, 156))
        );
    }// </editor-fold>                        

    
    
    
    private void backtohome1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        Controller.home();              //Methode zum Starten des Hauptmenüs
        Abfragepanel.End.dispose();     //Der JFrame auf den das JPanel kommt heißt End, soll jetzt abgebaut werden
    }                                           



    // Variables declaration - do not modify                     
    private static javax.swing.JLabel all;
    private javax.swing.JButton backtohome1;
    private javax.swing.JButton backtohome2;
    private static javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel label;
    private static javax.swing.JLabel notsolved;
    private static javax.swing.JLabel rounds;
    private static javax.swing.JLabel solved;
    // End of variables declaration                   
}
 

Anhänge

  • Screenshot (20).jpg
    Screenshot (20).jpg
    23,8 KB · Aufrufe: 32
Zuletzt bearbeitet:
Der Fehler sitzt in der methode

Java:
    public static void showcounters() {
        
        int_rounds++;
        
        all.setText(20 + " ");
        solved.setText(30 + " ");
        notsolved.setText(40 + " ");
        rounds.setText(rounds + " ");
        
    }

Java:
rounds.setText(rounds + " ");

du setzt den text vom label rounds auf die komponente "rounds" (also sich selbst). da rounds.setText(...) einen String als parameter erwartet, ruft er "toString()" vom Label auf.

ich vermute, du wolltest eigentlich

Java:
rounds.setText(int_rounds+ " ");

haben...
 

Zurück
Oben