Swing jTable mit jComboBox in einem Coloumn

.Domii

Bekanntes Mitglied
Ich bin gerade dabei ein Verwaltungsprogramm aufzubauen. In diesem wird ein Spieler eingelesen von dem ich wiederum sein Land brauche. Da ich alle Daten per Tabelle aufnehme wollte ich die jTable mit einer jComboBox ausstatten jedoch stehe ich nun vor einem Problem.

Alle Werte in dieser JTable sind Strings die später geparst werden!

Ich verstehe es nicht!.. Ich habe einige Beispiele bereits durchgesehen und jedoch immer nur gefunden das eine jTable aus lauter ComboBoxen besteht.

Hätte jemand ein Beispiel + Beschreibung für mein Problem bzw kann mir weiterhelfen?

2. Problem
Ich möchte die JComboBox in der 8. Spalte einfügen wie geht das dann?

Anmerkung:
Ich habe die JTable mithilfe eines Editors gebaut (Matisse, Netbeans) die Tabelle ist wiederrum in einem Panel das in einem TabPane ist die wiederum in einem Panel sitzt!
Screen:


Die Spalte mit dem Namen Land soll eben genau die ComboBox enthalten!


Mfg
.Domii
 
Zuletzt bearbeitet:

.Domii

Bekanntes Mitglied
Ok aber wo muss ich die

Java:
String[] values = new String[]{"item1", "item2", "item3"}; <<-- die Länder


int vColIndex = 0;                        <<-- vermutlich der Index den ich brauche? (8)
TableColumn col = table.getColumnModel().getColumn(vColIndex);
col.setCellEditor(new MyComboBoxEditor(values));


col.setCellRenderer(new MyComboBoxRenderer(values));  <<-- oke das ist logisch

einfügen?
Konstruktor vom Frame? nach dem initComponent()? (das wurde vom Designer generiert)

ich benütze kein DefaultTableModel sondern ein abgeleitetes Model von AbstractTableModel macht das irgendwelche unterschiede?

Edit1: Vermutlich muss ich das setValueAt/getValueAt ändern aber wie? wär echt toll wenn ihr mir helfne könntet :/ :bahnhof:
 
Zuletzt bearbeitet:

.Domii

Bekanntes Mitglied
Ich habs jetzt mal so probiert:
Java:
package tabletest;

import java.awt.BorderLayout;

import javax.swing.DefaultCellEditor;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableCellEditor;

public class Tabletest {
  public static void main(String args[]) {
      
    JComboBox comboBox = new JComboBox();
    comboBox.addItem("Ägypten");
    comboBox.addItem("Äquatorialguinea");
    comboBox.addItem("Äthiopien");
    comboBox.addItem("Afghanistan");
    comboBox.addItem("Albanien");
    comboBox.addItem("Algerien");

    
    TableCellEditor editor = new DefaultCellEditor(comboBox);

    JFrame frame = new JFrame("JTable Anatomy");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    JTable table = new JTable(new DefaultTableModel(2,2));


    table.getColumnModel().getColumn(1).setCellEditor(editor);

    JScrollPane scrollPane = new JScrollPane(table);
    frame.add(scrollPane, BorderLayout.CENTER);
    frame.setSize(300, 150);
    frame.setVisible(true);
  }
}

(in einem Nebenprogramm)

das Funktioniert einwandfrei weil ich hier NICHT mein abgeleitetes TableModel benutze!

Mein TableModel:

Java:
class PlayerTableModel extends AbstractTableModel {
    private int rowCount = 0;
    
    private Spieler[] ss = new Spieler[rowCount];
    
    public PlayerTableModel(){ 
        
    }
    
    @Override
    public int getRowCount() {
      initialize();
      return (rowCount);
    }

    @Override
    public int getColumnCount() {
        return 10;
    }
  
    @Override
    public boolean isCellEditable(int rowNo, int colNo) {
        return true;
    }
        
        @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
            switch (columnIndex) {
                case (0):
                    return ss[rowIndex].getvName();
                case (1):
                    return ss[rowIndex].getnName();
                case (2):
                    return ss[rowIndex].getStrasse();
                case (3):
                    return ss[rowIndex].getPlz();
                case (4):
                    return ss[rowIndex].getOrt();
                case (5):
                    return ss[rowIndex].getHandyNr();
                case (6):
                    return ss[rowIndex].geteMail();
                case (7):
                    return ss[rowIndex].getLand();
                case (8):
                    return getPlayerTeam(ss[rowIndex]);
                case (9):
                    return ss[rowIndex].getGebDatum();
                default:
                    return null;
        }
    }
        
    private String getPlayerTeam(Spieler s){
            List<Team> t = teams;
            for (int i = 0; i < t.size(); i++) {
                if (t.get(i).getA() == s) {
                    return t.get(i).getName();
                }
                if (t.get(i).getB() == s) {
                    return t.get(i).getName();
                }
            }
            return "";
        }
        
        @Override
    public String getColumnName(int colNo) {
      switch (colNo) {
        case (0):
          return "Vorname";
        case (1):
          return "Nachname";
        case (2):
          return "Straße";
        case (3):
          return "PLZ";
        case (4):
          return "Ort";
        case(5):
          return "Telefonnr.";
        case(6):
          return "E-Mail";
        case(7):
            return "Land";
        case(8):
            return "Team";
        case(9):
            return "Geburtstag";
        default:
          return null;
      }
    }
        
        @Override
    public Class getColumnClass(int colNo) {
      return String.class;
    }
        
    private void initialize() {
            List<Spieler> spielerList = getPlayerList();
            int i = 0;

            try {
                rowCount = spielerList.size();
                
                ss = new Spieler[rowCount];
                
                for (Spieler s: spielerList) {
                    ss[i] = s;
                    i++;
                }
            }
            catch (Exception ex) {
                ex.printStackTrace();
                System.exit(1);
            }
        }
        
    public List<Spieler> getPlayerList(){
            List<Spieler> s = new LinkedList<Spieler>();
            List<Team> t = teams;
            for (int i = 0; i < t.size(); i++) {
                if (t.get(i).getA() != null) {
                    s.add(t.get(i).getA());
                }
                if (t.get(i).getB() != null) {
                    s.add(t.get(i).getB());
                }
            }
            return s;
        }
        
    @Override
    public void setValueAt(Object value, int rowNo, int colNo) {
      String valueStr;
      try {
        valueStr = (String) value;
        switch (colNo) {
          case (0):
              if(value == null){}
              else{
                  ss[rowNo].setvName(valueStr);
              }
            break;
          case (1):
            if (value == null) {}
            else {
              ss[rowNo].setnName(valueStr);
            }
            break;
          case (2):
            if (value == null) {}
            else {
              ss[rowNo].setStrasse(valueStr);
            }
            break;
          case (3):
            if (value == null) {}
            else {
              ss[rowNo].setPlz(valueStr);
            }
            break;
          case (4):
            if (value == null) {}
            else {
              ss[rowNo].setOrt(valueStr);
            }
            break;
              
          case (5):
            if (value == null) {}
            else {
              ss[rowNo].setHandyNr(valueStr);
            }
            break;
           case (6):
            if (value == null) {}
            else {
              ss[rowNo].seteMail(valueStr);
            }
            break;
           case(7):
            if (value == null) {}
            else {
              ss[rowNo].setHandyNr(valueStr);
            }
            break;
          case(8):
            if (value == null) {}
            else {
              ss[rowNo].setLand(valueStr);
            }
            break;
          case(9):
              if (value == null) {}
              else{
                  ss[rowNo].setGebDatum(valueStr,"","");
              }    
          default:
            break;
        }
        save(rowNo);
      }
      catch (Exception ex) {
        System.err.println("error in setValueAt");
      }
    }
    

    
    public void save(int rowNo){
            List<Team> t = new LinkedList<Team>();
            t = teams;
            
            for (int i = 0; i < t.size(); i++) {
                if (t.get(i).getA() != null) {
                   if (t.get(i).getA().getId() == ss[rowNo].getId()) {
                      t.get(i).setA(ss[rowNo]); 
                    } 
                }
                if (t.get(i).getB() != null) {
                    if (t.get(i).getB().getId() == ss[rowNo].getId()) {
                        t.get(i).setB(ss[rowNo]); 
                    }
                }
            }
            teams = t;
        }
    
    public void remove(int rowNo){
        for (int i = 0; i < teams.size(); i++) {
            if (teams.get(i).getA() == ss[rowNo]) {
                if (teams.get(i).getB() != null) {
                    teams.get(i).setA(teams.get(i).getB());
                    teams.get(i).setB(null);
                }
                else{
                    teams.remove(i);
                }
            }
            else{
                if (teams.get(i).getB() == ss[rowNo]){
                    teams.get(i).setB(null);
                }
            }
        }
    }
    
}


Wenn ich nun genau das selbe wie oben versuche funktioniert das nicht.. bitte helft mir ;(

Java:
       TableCellEditor editor = new DefaultCellEditor(initComboBox());
       playerTable.getColumnModel().getColumn(8).setCellEditor(editor);

steht im Konstruktor..

Mfg
.Domii
 
Zuletzt bearbeitet:

ChrisKu

Bekanntes Mitglied
Ich bin mir zwar nicht sicher und kann es momentan auch nicht testen. Aber versuche doch mal, mit Deinem eigenen TabelModel das DefaultTableModel zu erweitern und nicht das AbstractTableModel.
 
S

SlaterB

Gast
was soll man denn da helfen?
das ganze funktioniert wenn dein Model nicht irgendwas kaputt macht,
direkt sichtbar ist das nicht unbedingt und da du auf alle Klassen drumherum wie Spieler/ Team verzichtest kann es auch niemand testen..
immer vollständig lauffähige Programme posten!

allgemeiner Tipp: in setValueAt nur einmal am Anfang bei value == null returnen, nicht 20x abfragen..

Java:
public class Test
{


    public static void main(String[] args)
    {
        System.out.println("anfang");
        JComboBox comboBox = new JComboBox();
        comboBox.addItem("Ägypten");
        comboBox.addItem("Äquatorialguinea");
        comboBox.addItem("Äthiopien");
        comboBox.addItem("Afghanistan");
        comboBox.addItem("Albanien");
        comboBox.addItem("Algerien");


        TableCellEditor editor = new DefaultCellEditor(comboBox);

        JFrame frame = new JFrame("JTable Anatomy");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JTable table = new JTable(new PlayerTableModel());

        table.getColumnModel().getColumn(8).setCellEditor(editor);

        JScrollPane scrollPane = new JScrollPane(table);
        frame.add(scrollPane, BorderLayout.CENTER);
        frame.setSize(300, 150);
        frame.setVisible(true);

    }
}


class Spieler
{

}


class PlayerTableModel
    extends AbstractTableModel
{
    private int rowCount = 0;

    private Spieler[] ss = new Spieler[rowCount];

    public PlayerTableModel()
    {
        rowCount++;
    }

    public int getRowCount()
    {
        initialize();
        return (rowCount);
    }

    public int getColumnCount()
    {
        return 10;
    }

    @Override
    public boolean isCellEditable(int rowNo, int colNo)
    {
        return true;
    }

    public Object getValueAt(int rowIndex, int columnIndex)
    {
        return "";
    }

    private String getPlayerTeam(Spieler s)
    {

        return "";
    }

    @Override
    public String getColumnName(int colNo)
    {
        switch (colNo)
        {
            case (0):
                return "Vorname";
            case (1):
                return "Nachname";
            case (2):
                return "Straße";
            case (3):
                return "PLZ";
            case (4):
                return "Ort";
            case (5):
                return "Telefonnr.";
            case (6):
                return "E-Mail";
            case (7):
                return "Land";
            case (8):
                return "Team";
            case (9):
                return "Geburtstag";
            default:
                return null;
        }
    }

    @Override
    public Class getColumnClass(int colNo)
    {
        return String.class;
    }

    private void initialize()
    {

    }


    @Override
    public void setValueAt(Object value, int rowNo, int colNo)
    {

    }


}
 

.Domii

Bekanntes Mitglied
Habe jetzt lange herumgetüftelt und bin immer noch zu keiner Lösung gekommen.
Ich vermute das ich iwo in meinem eigenen TableModel einen Fehler mache oder beim Refresh..

Ich programmiere erst seit knapp einem Jahr Java. Aber bis jetzt hatte ich nie ein Problem mit den JComboBoxen..

Das gesamte Projekt: -

Mit freundlichen Grüßen
.Domii
 
Zuletzt bearbeitet:
S

SlaterB

Gast
das willst du bestimmt lieber nicht anschauen..

ich habe es geladen, es fehlt jeglicher Code zum TableCellEditor, insofern kann niemand sagen was du falsch machst..,
schon wenn du den Code vor dem Model einfügst kracht es, aber auch mit ausführlicher verständlicher Fehlermeldung die man hier natürlich posten könnte..

in welcher Klasse die main-Methode steckt wird nicht verraten, wozu auch?

nachdem ich die beiden fraglichen Zeilen eingefügt sowie noch mehr oder weniger manuell einen Spieler reingemogelt habe,
sonst wäre ja die Tabelle leer (Erklärung was man bedienen muss um einen Spieler zu erzeugen oder ähnliches? fehlt..), funktioniert bei mir die Combobox-Auswahl,

in setValueAt() ignorierst du den Wert für diese Spalte bisher, zu den anderen Spalten habe ich noch die Verarbeitung angeschaut,
da ist bisher kontraproduktiv, dass in der ständig aufgerufenen Methode getRowCount() ständig initialize(); ausgeführt wird,
ansonsten klappt das erstmal auch
 

.Domii

Bekanntes Mitglied
1. wenn du das projekt ausführst und auf spieler einfügen gehst steht da ganz klar "Vorher Team hinzufügen" sobald du unter dem Tab "Team hinzufügen" ein Team hinzugefügt hast wird dieses mit einem leeren Spieler in die Tabelle rein geladen.. und den kannst du dort editieren! (steht bereits in dem playerAddErr Label..!)

2. die Main ist momentan in der tst_screen.java

3. habe den TableCellEditor wieder rausgenommen da es noch mehr verwirrend ausgesehen hätte.

Schön und gut das es bei dir funktioniert, bei mir jedoch immer noch nicht..

Mfg
.Domii
 
Zuletzt bearbeitet:
S

SlaterB

Gast
allgemeingültig für fast alles auf der Welt:
-> du musst die Befehle bei dir einfügen und das dann posten (nicht unbedingt neue 100kb, vielleicht nur die jeweilige Klasse/ Methode/ Ausschnitt von 10 Zeilen)
und/ oder vor allem die Fehlermeldungen posten/ sonstiges Fehlverhalten in Worte fassen
 

.Domii

Bekanntes Mitglied
ok..
Lass uns das bitte nocheinmal neu starten
Also mein Problem ist:
Ich versuche mit dem DefaultCellEditor
Java:
TableCellEditor editor = new DefaultCellEditor(initComboBox());
table.getColumnModel().getColumn(7).setCellEditor(editor);
meiner Tabelle eine ComboBox in der 8. Spalte einzufügen. (Index 7!)
Das Problem dabei ist das ich wenn ich diese 2 Zeilen nach dem "initComponent()" in meinem Konstruktor von tst_screen.java einfüge diese ComboBox darin nicht aufzufinden ist. Sondern nur eine normale Zelle!
Es wird keine Fehlermeldung geworfen oder sonstiges.

Anleitung zum Spieler hinzufügen:
1. Team hinzufügen durch den Tab "Team hinzufügen"
2. Durch drücken von "AddPlayer" vom Tab "Spieler hinzufügen" kannst du dort einen Spieler in diesem Team hinzufügen
3. Der Spieler kann dort editiert werden
4. Maximal 2 Spieler pro Team!
5. Durch "Turnier erstellen" wird der Tabelleninhalt erst auf eine Liste mit Teams übertragen nämlich in die Liste finalTeams.
6. Mit dieser Liste wird dann ein neuer Frame gestartet indem nun schluss endlich das komplette Turnier ablaufen soll!


Mit freundlichen Grüßen
.Domii
 
Zuletzt bearbeitet:
S

SlaterB

Gast
es gibt eine Methode refresh(), in der das Model neu gesetzt wird, damit wird der Editor gelöscht bzw. ist nicht mehr da

die beiden fraglichen Befehle könnten dort rein, wenn das ganze nicht generell zu überlegen ist, wieso ständig neues Model?
zumindest vielleicht die ComboBox für den Editor sparsamerweise nur 1x erzeugen
 

.Domii

Bekanntes Mitglied
Habe das Refresh leider nur so von meinem Professor beigebracht bekommen und selbst eig. noch keine andere Lösung gefunden.

Das mit dem initComboBox() stimmt. Werde ich sofort übernehmen.
 

.Domii

Bekanntes Mitglied
Oke!

DANKE!..

Ich hab jetzt deine Tipps ungesetzt und ja... es funktioniert!

Ich wäre alleine nicht drauf gekommen..

(thanks abgegeben!)

Kleine Frage noch: Welche Möglichkeiten vom Refresh gibt es? :]
 
S

SlaterB

Gast
allgemein ist das kaum zu sagen, ich meinte das nur auf dieses Thema,

ein Model neu zu setzen ist schon viel besser als eine ganze JTable auszutauschen,
wenn man aber wie hier sieht dass da noch Editoren usw. dranhängen, dann auch keine allzu gute Idee,

der nächste Schritt wäre das Model beizubehalten und nur darin die Liste der Daten neu zu setzen,
falls überhaupt nötig, auch das ist nicht unbedingt ein üblicher Schritt, wieso sollten die ständig ausgetauscht werden?
im Zweifel erstmal gar nichts machen und nur dann aktiv werden wenn es einen Grund gibt
(gut möglich dass er schon vorliegt, habe nicht alles angeschaut, neues Team kann natürlich manches nötig werden lassen)
 

.Domii

Bekanntes Mitglied
ok daran werde ich noch arbeiten!

Noch eine kleine Frage
Wie kann ich das getSelectedItem von der ComboBox aufrufen? bzw wie greife ich auf diese ComboBox zu?


und ein neues Problem:
Wenn ich bei einer Zelle den Value der ComboBox ändere ändert sich der überall mit :0

Projekt im anhang


Mit freundlichen Grüßen
.Domii
 

Anhänge

  • Gui.zip
    111,7 KB · Aufrufe: 10
Zuletzt bearbeitet:
S

SlaterB

Gast
auf die ComboBox greifst du nie zu, besser auch nicht speichern wie bisher, du kannst gleich den Editor speichern,
nur der Editor ist der Herr der Ringe, äh, der ComboBox, was der pro Zeile macht kommt mit setValueAt() im TableModel an,
ansonsten hat dich das nicht zu interessieren

'ändert sich überall' ist etwas überraschend, da du das Land sowieso nicht ausgibst, sondern "" in getValueAt() für 7,
außerdem ist immer noch der initialize()-Fehler in getRowCount(), der jede Änderung gleich nachhaltig vernichtet,
wie du da irgendwas sinnvolles beobachten kannst ist mir ein Rätsel

abgesehen davon funktioniert es bei mir, poste mal Screenshot oder System.out.println-Ausgaben oder was immer du irgendwie feststellst
 

.Domii

Bekanntes Mitglied
Oke hab das Problem schon selbst gelöst.
Musste einfach ignorieren das ich auf die JComboBox selbst zugreifen wollte und einfach im getValueAt und im setValueAt das entsprechende einfügen. :)

Initialize Fehler? Ich initialiere immer bevor ich den rowCount zurück gebe der sich ja auch geändert hat wenn man ein Team hinzufügt und dessen ersten Spieler :]

Mit freundlichen Grüßen
.Domii
 

.Domii

Bekanntes Mitglied
Oke soweit so gut
Genau das Selbe möchte ich jetzt für die Geburtstage machen (gespaltet in 3 Spalten) je eine ComboBox das ist jetzt kein Problem mehr nur jedes Monat hat ja nicht 31 Tage wie kann dann hier die Werte in der ComboBox nachträglich ändern? :] also das dieser Value garnichtmehr angezeigt wird?

Projekt mit den neuen Spalten:
(ComboBox kommt gleich)
 
Zuletzt bearbeitet:
S

SlaterB

Gast
du musst den TableCellEditor überschreiben, die Methode

getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column)

und darin dann vor der Rückgabe der ComboBox dessen Inhalt ändern,
an den Parametern aus der Tabelle bzw. dem Model kannst du erkennen, für welche Zeile aktuell, also für welchen Monat usw.
 

.Domii

Bekanntes Mitglied
Ich muss jetzt ja :
Java:
private class MyCellEditor implements TableCellEditor{

        @Override
        public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public Object getCellEditorValue() {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public boolean isCellEditable(EventObject anEvent) {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public boolean shouldSelectCell(EventObject anEvent) {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public boolean stopCellEditing() {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public void cancelCellEditing() {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public void addCellEditorListener(CellEditorListener l) {
            throw new UnsupportedOperationException("Not supported yet.");
        }

        @Override
        public void removeCellEditorListener(CellEditorListener l) {
            throw new UnsupportedOperationException("Not supported yet.");
        }

}

umschreiben aber gibt es da keine AbstractCellEditor? oder ähnliches?

Mfg
.Domii
 
S

SlaterB

Gast
erbe von DefaultCellEditor,
dann am besten wie zuvor die ComboBox an den DefaultCellEditor-Konstruktor auch übergeben,
in der Methode erst den super-Wert abholen, bearbeiten und weiterreichen
 

.Domii

Bekanntes Mitglied
Wie hole ich mir den superwert ab?

im Konstruktor ist es klar

Java:
public MyCellEditor(JComboBox cb){
super(cb);
}

schon gefunden

super.getTableCellEditorComponent(..) ^^
 
Zuletzt bearbeitet:
S

SlaterB

Gast
Java:
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
            Component c = super.getTableCellEditorComponent(alle Parameter gleich);
             // auf ComboBox casten, evtl. ändern, zurückgeben
        }
 

.Domii

Bekanntes Mitglied
Lösung:
Java:
private class MyCellEditor extends DefaultCellEditor{
    
    public MyCellEditor(JComboBox cb){
         super(cb);
    }
    
    @Override
    public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
         Component c = super.getTableCellEditorComponent(table,value,isSelected,row,column);
         JComboBox cb = (JComboBox)c;
         String s = (String)table.getValueAt(row, (column+1));
         if (s == "Jänner" || s == "März" || s == "Mai" || s == "Juli" || s == "August" || s == "Oktober" || s == "Dezember"){
             return cb;
         }
         if (s == "Februar" || s == "April" || s == "Juni" || s == "September" || s == "November") {
             cb = initSmallDayComboBox();
             return cb;
         }
         return c;
    }
}

Schaltjahre werden noch später berücksichtigt.

in initSmallDayComboBox(); bekomme ich eine JComboBox zurück die 30 Tage beinhaltet :]
 
S

SlaterB

Gast
Strings aber nicht mit == vergleichen oder am besten gleich ein Enum für Monate einführen, dann mit switch unterscheiden

eine neue ComboBox zurückgeben kann hier funktionieren, ist allgemein aber nicht zu empfehlen
(neues Objekt mal wieder,
vor allem aber Einstellungen durch super verloren, hier vielleicht nicht so wichtig, bei der normalen Anzeige aber sowas wie Rahmen, Hintergrundfarbe)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Swing JCombobox in einem JTable vorbelegen AWT, Swing, JavaFX & SWT 4
D Swing Erstes Item einer JCombobox in JTable anzeigen AWT, Swing, JavaFX & SWT 2
N JComboBox in JTable [Swing] -> totaler UI-Einsteiger AWT, Swing, JavaFX & SWT 3
H Swing JList/JTable mit JButton, JTextField, Image, JComboBox und JLable AWT, Swing, JavaFX & SWT 2
F Swing JComboBox in JTable AutoComplete + Tab AWT, Swing, JavaFX & SWT 4
M JComboBox Item-Auswahl in JTable AWT, Swing, JavaFX & SWT 2
H Unterschiedliche JComboBox je JTable Zeile AWT, Swing, JavaFX & SWT 4
S Einzelne JComboBox in JTable austauschen AWT, Swing, JavaFX & SWT 4
S Swing AWT-Exception bei JTable mit JComboBox beim Löschen der letzten Zeile AWT, Swing, JavaFX & SWT 3
C jComboBox in jTable ohne Klick öffnen AWT, Swing, JavaFX & SWT 4
O Swing JComboBox in JTable AWT, Swing, JavaFX & SWT 14
K Swing JComboBox in JTable AWT, Swing, JavaFX & SWT 9
B JComboBox in JTable, Actionlistener AWT, Swing, JavaFX & SWT 10
E Swing JComboBox als CellEditor in JTable zeigt Elemente nicht sofort an AWT, Swing, JavaFX & SWT 5
M Swing jcombobox als jtable-editor: neues Item auswählen AWT, Swing, JavaFX & SWT 4
N jTable mit JComboBox auslesen AWT, Swing, JavaFX & SWT 6
K Swing JTable mit JComboBox AWT, Swing, JavaFX & SWT 10
A JComboBox bei Veränderungen in der JTable mit aktualisieren AWT, Swing, JavaFX & SWT 6
A JComboBox-Zeilen in JTable AWT, Swing, JavaFX & SWT 2
W JComboBox in einer Reihe von JTable AWT, Swing, JavaFX & SWT 7
G Swing JComboBox in JTable beim Aufklappen befüllen AWT, Swing, JavaFX & SWT 3
S JComboBox in JTable wird erst nach klick angezeigt AWT, Swing, JavaFX & SWT 2
O JCombobox in EINER JTable Cell AWT, Swing, JavaFX & SWT 5
G JComboBox und JTable transparent AWT, Swing, JavaFX & SWT 18
D JCombobox in JTable AWT, Swing, JavaFX & SWT 5
J JCombobox in JTable klappt beim ersten Tastendruck zu AWT, Swing, JavaFX & SWT 3
G JTable mit JComboBox als Celleditor, selectedRow falsch! AWT, Swing, JavaFX & SWT 3
A JCombobox in JTable AWT, Swing, JavaFX & SWT 4
S JCbox in Jtable Zelle nur anzeigen , wenn JCombobox ="a AWT, Swing, JavaFX & SWT 3
H JTable und JCombobox ? AWT, Swing, JavaFX & SWT 2
M JComboBox in JTable immer sichtbar AWT, Swing, JavaFX & SWT 16
R JComboBox über ein AstractTableModel in eine JTable packen AWT, Swing, JavaFX & SWT 2
S JTable (Scrollpane und ColumnNames) und JComboBox AWT, Swing, JavaFX & SWT 2
M JTable mit JCombobox eigene Auswahl pro Zeile ? AWT, Swing, JavaFX & SWT 3
TRunKX Kann man ne JCOmboBox in eine JTAble einfügen AWT, Swing, JavaFX & SWT 10
D JTable und JComboBox oder CheckboxGroup AWT, Swing, JavaFX & SWT 6
S JComboBox in JTable AWT, Swing, JavaFX & SWT 8
K JTable als Popup in einer JComboBox? AWT, Swing, JavaFX & SWT 3
B Wert einer JCombobox in einer JTable setzen AWT, Swing, JavaFX & SWT 2
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
S HPRO und UPRO gemeinsame JTABLE gemeinsamer RENDERER ? AWT, Swing, JavaFX & SWT 1
F Swing JTable - MultiHeader inkl. Eingabemöglichkeit AWT, Swing, JavaFX & SWT 1
S JTable - Feldinhalte anzeigen AWT, Swing, JavaFX & SWT 15
D Swing JTable Spaltenbreite AWT, Swing, JavaFX & SWT 1
W Gibt es einen "automatischen Listener" in Swing oder JTable oder der ATM-Klasse? AWT, Swing, JavaFX & SWT 14
G jTable - getSelectedRow() AWT, Swing, JavaFX & SWT 3
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
D Tastaturabfragen CTRL+t, CTRL+E bei eine JTable, bestehend aus JTextAteas AWT, Swing, JavaFX & SWT 4
P Checkboxes in JTable nicht editable AWT, Swing, JavaFX & SWT 9
F Best-Practise: JTable Text in Zelle zu groß AWT, Swing, JavaFX & SWT 2
izoards JTable in CSV File schreiben... AWT, Swing, JavaFX & SWT 23
Kohl Jedes Objekt einer JTable um ein Zeichen verkürzen AWT, Swing, JavaFX & SWT 7
I JTable, DefaultTableModel, zwei Zahlen multiplizieren. AWT, Swing, JavaFX & SWT 26
M JTABLE / wie oft wurde gewürfelt. AWT, Swing, JavaFX & SWT 1
F JTable vergrößern AWT, Swing, JavaFX & SWT 2
H JTable: Diverse NullPointer-Exceptions zur Laufzeit AWT, Swing, JavaFX & SWT 3
J Swing Werte des JTable werden nicht angezeigt AWT, Swing, JavaFX & SWT 9
T Swing JTable cellRenderer mit jpg Hintergrundfarbe lässt sich nicht ändern. AWT, Swing, JavaFX & SWT 1
HoT Einzelne Zelle in JTable Rahmen unten setzen AWT, Swing, JavaFX & SWT 24
B JTable Zellen zusammenfügen AWT, Swing, JavaFX & SWT 3
M Swing Cell Renderer für Zeilenumbruch in JTable AWT, Swing, JavaFX & SWT 0
H JTable im JSplitPane darstellen AWT, Swing, JavaFX & SWT 2
MadMax2506 Swing JTable lädt sehr lange AWT, Swing, JavaFX & SWT 1
D Zeilenumbruch in einer JTable AWT, Swing, JavaFX & SWT 9
R Swing JTable und Spaltenausrichtung AWT, Swing, JavaFX & SWT 8
G JTable füllen AWT, Swing, JavaFX & SWT 1
H JTable TableCellEditor-Problem AWT, Swing, JavaFX & SWT 0
W Swing JTable Zeilenumbruch innerhalb einer Zelle AWT, Swing, JavaFX & SWT 3
J Datensatz in jTable ausgeben AWT, Swing, JavaFX & SWT 3
M Swing Automatischer Editorstart in JTable-Zelle AWT, Swing, JavaFX & SWT 5
ralfb1105 Swing JTable aktualisieren AWT, Swing, JavaFX & SWT 5
adiko01 JTable: Nur markierte Zeilen aus der Tabelle in CSV exportiern AWT, Swing, JavaFX & SWT 9
M JTable.setDefaultRenderer(...) greift nicht AWT, Swing, JavaFX & SWT 0
J JTable: Eingabe in Tabellenzelle korrigieren AWT, Swing, JavaFX & SWT 4
T Problem mit JTable Sortierung AWT, Swing, JavaFX & SWT 2
D JTable nach INSERT aktualisieren /refreshen AWT, Swing, JavaFX & SWT 1
D MySQL Daten in JTable anzeigen AWT, Swing, JavaFX & SWT 2
H Swing Jtable extra spalte AWT, Swing, JavaFX & SWT 6
S Swing Rechteck über JTable zeichnen (per MouseListener) AWT, Swing, JavaFX & SWT 1
S Swing Mal wieder JTable Ansicht aktualisieren AWT, Swing, JavaFX & SWT 10
A JTable mit Daten füllen AWT, Swing, JavaFX & SWT 1
VfL_Freak Swing Einzelne Zeile in jTable selektieren klappt nicht AWT, Swing, JavaFX & SWT 7
N AWT jTable CellRenderer AWT, Swing, JavaFX & SWT 6
T Swing JTable valueChanged datensatz löschen AWT, Swing, JavaFX & SWT 1
0 Swing JTable aus anderer Klasse updaten AWT, Swing, JavaFX & SWT 5
S Jtable defaultRenderer wohin damit ? AWT, Swing, JavaFX & SWT 23
T Swing JTable / FocusListener AWT, Swing, JavaFX & SWT 0
it_is_all Warum wird die JTable im JDialog nicht angezeigt? AWT, Swing, JavaFX & SWT 1
L Swing JTable im Panel darstellen AWT, Swing, JavaFX & SWT 8
T Swing Double Click bei Buttons in JTable AWT, Swing, JavaFX & SWT 9
J addRow bei JTable AWT, Swing, JavaFX & SWT 6
M Jtable gibt -1 wert bei selectedRow und Column AWT, Swing, JavaFX & SWT 3
Meeresgott Swing JTable AWT, Swing, JavaFX & SWT 4
J JTable Selection Listener funktioniert nicht AWT, Swing, JavaFX & SWT 4
C Swing Daten in JTable wiedergeben per TableModel und MVC Pattern AWT, Swing, JavaFX & SWT 16
Z Swing Drag&Drop zwischen JTable und JTree AWT, Swing, JavaFX & SWT 4
Thallius JTable dynamisch Spaltenanzahl verändern AWT, Swing, JavaFX & SWT 2
Thallius JTable dynamisch laden? AWT, Swing, JavaFX & SWT 2
B Swing JTable sortieren AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben