Netbeans Komponenten nachträglich zur GUI hinzufügen

hepa fan

Grünschnabel
Hallo,

ich möchte mit Netbeans eine Datenbankabfrage machen und mir die Ergebnisse in JLabel’s anzeigen. Diese sind später in einer Klasse die dann für jeden Datensatz einzeln erzeugt werden. ABER mein Problem ist das ich ja nicht immer gleich viele Komponenten benötige und somit muss ich diese Komponenten ja per Hand einfügen, aber das bekomme ich leider nicht hin.

Ich habe jetzt zum Ausprobieren einfach eine ganze einfache Oberfläche mit einem JPanel erstellt mit dem ich testen wollte wie man so etwas am einfügt - leider aber ohne Erfolg.
Code:
package javaapplication19;
import java.awt.*;
public class NeuJFrame extends javax.swing.JFrame {
   
    /** Creates new form NeuJFrame */
    public NeuJFrame() {
        initComponents();
    }
   
    // <editor-fold defaultstate="collapsed" desc=" Erzeugter Quelltext ">
    private void initComponents() {
        javax.swing.JPanel jPanel;

        //Stelle 1--------------------

        jPanel = new javax.swing.JPanel();
        //Stelle 2 ---------------------
        //JLabel test wird erzeugt und zum Panel hinzugefügt aber nicht angezeigt
        javax.swing.JLabel test = new javax.swing.JLabel("Test");
        jPanel.add(test);
        jLabel1 = new javax.swing.JLabel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        //Stelle 3 ---------------------
        //Stelle 4 ----------------------

        jLabel1.setText("jLabel1");

        org.jdesktop.layout.GroupLayout jPanelLayout = new org.jdesktop.layout.GroupLayout(jPanel);
        jPanel.setLayout(jPanelLayout);
        jPanelLayout.setHorizontalGroup(
            jPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanelLayout.createSequentialGroup()
                .addContainerGap(346, Short.MAX_VALUE)
                .add(jLabel1))
        );
        jPanelLayout.setVerticalGroup(
            jPanelLayout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
            .add(org.jdesktop.layout.GroupLayout.TRAILING, jPanelLayout.createSequentialGroup()
                .addContainerGap(134, Short.MAX_VALUE)
                .add(jLabel1))
        );

        [...]

        pack();
    }// </editor-fold>
   
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new NeuJFrame().setVisible(true);
            }
        });
    }
   
    // Variablendeklaration - nicht modifizieren
    private javax.swing.JLabel jLabel1;
    // Ende der Variablendeklaration
   
}
Das in Zeile 21/22 erstellte Labelfeld ist aber leider nirgens zu sehen icon_sad.gif
 

Anhänge

  • netbeans.jpg
    netbeans.jpg
    52,4 KB · Aufrufe: 111
Hallo,

das ganze liegt am Layout. Du musst noch definieren wo es angezeigt wird. Ich kenne das GroupLayout leider nicht.

Wenn du einen Rat von mir möchtest, dann schau dir dieses Kapitel zwei -drei Tage an. Danach müsstest du selbst in der Lage sein GUIs selbst zu bauen. Danach blickst du auch durch, wie was aufgebaut ist und wie es funktioniert. Vor allem ist der Code nachher wesentlich übersichtlicher, als der erzeugte Code eines GUI-Builders.
Du wirst auch merken, dass es gar nicht so schwierig ist, GUIs selbst zu schreiben.

MFG

zEriX
 
Zurück