przypisanie standardowego jComboBox do mojego jComboBox

0

Witam.

Mam aplikację okienkową (łączy się z bazą danych). Używam NetBeans. Mam stworzone okienko z elementów, jednym z nich jest jComboBox. Mam również klasę DetailedComboBox (w osobnym pliku .java), która rozszerza jComboBox - po to, żeby po rozwinięciu ukazujące się elementy były w formie jTable. Moje pytanie brzmi: jak teraz temu standardowemu jComboBox przypisać formę (zachowanie czy jak zwał) mojego rozszerzonego DetailedComboBox w NetBeans?

0

w miejscu gdzie deklarujesz zamiast new JComboBox napisz new DetailedComboBox ?

0

Tak prosto to nie jest w NetBeans, bo IDE samo generuje kod gdy "ustawiam" sobie klocki jak tworze okienko. Może gdzieś we właściwościach tego standardowego jcombobox? Tylko gdzie i jak?

0

Rada nr 1 nie używaj generowanego GUI.
Rada nr 2 Jak już musisz to sprawdzaj co generuje netbeans, aż sobie sprawdziłem :P
zamień tutaj jComboBox1 = new javax.swing.JComboBox();
na swoją deklaracje

private void initComponents() {

       ** jComboBox1 = new javax.swing.JComboBox();**

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(114, 114, 114)
                .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(230, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(128, 128, 128)
                .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(152, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>       

 // Variables declaration - do not modify                     
    private javax.swing.JComboBox jComboBox1;// **No i to zmodyfikuj **
    // End of variables declaration    
1
  1. prawym na panel -> add from pallete -> beans -> choose beans -> pakiet+nazwa klasy
  2. prawym na component -> customize code -> tu możesz zmienić np. konstruktor
0

Zrobiłem jak w pkt 2, wybieram custom creation i tam zmieniam trochę kod. Nie mogę jednak na dole zmienić deklaracji zmiennej. Dlaczego? Co muszę zrobić aby ręcznie ją zadeklarować?

1

powinieneś usunąć tamtego CB(poprzez GUI) i wprowadzić na nowo poczynając od punktu pierwszego :)

0

Dzięki wielkie, ogarnąłem temat.

1 użytkowników online, w tym zalogowanych: 0, gości: 1