ein bestehendes Model bei JTable ändern



  • Hallo
    ich habe eine JTable-Klasse. Im ctor setze ich ein Model mittels setModel(mymodelOne);, später will ich mittels einer Mehtode

    public void viewChanged(int type, View view);
    

    ein neues Model setzen. Da dachte ich ein setModel(newmodel); würde ausreichen, aber es geht einfach nicht. JTable verwendet immernoch das alte Model.
    ich habs mal mit tableChanged(new TableModelEvent(newmodel)); ausprobiert, geht auch nicht.
    wie ändert man ein Model eines JTable nachdem man bereits ein Model gesetzt hat?



  • Hi

    Hmm ich Programmiere gerade auch mit dem JTable bischen rum.
    Das Problem was du hast habe ich nicht.

    Ich mache das immer folgendermasen
    1. DefaultTableModel erzeugen
    2. Den vorheriigen Model löschen = null setzen.
    3. Jetzt den neu erzeugen dem JTAble zuweisen.

    Bei mir klappt das wunderbar.

    Schribe mal bischen Code auf.



  • ja danke
    aber ich hab das problem schon abgehackt, ich hab einfach 3 tabellen mit meinen models und die wechsle ich immer.
    ich hatte

    // ...
        public MyTable()
        {
            super();
            setModel(new MyModelEins());
        }
    // ...
    

    und dan später in einem void modelChange(); mehtode von MyTable

    void modelChange(MyModel newmodel)
    {
        setModel(newmodel)
    }
    

    komischerweise hat er aber das model nicht verändert, sondern immer das model beibehalten, das ich im ctor mit setModel(new MyModelEins()); gesetzt hatte.


Log in to reply