Alternative JavaFX TableView

Diskutiere Alternative JavaFX TableView im AWT, Swing, JavaFX & SWT Bereich.
S

smox

Hallo,

Ich bin gerade dabei mich wieder vermehrt mit Desktop Applikationen auseinanderzusetzen und ein elementarer Baustein ist für mich die TableView in Verbindung mit den allseits bekannten CRUD Operationen.

Deswegen hab ich mich ein wenig tiefer mit der TableView in JavaFX auseinander gesetzt.
Anfangs noch recht begeistert bin ich - wie ihr euch sicherlich denken könnt - recht schnell auf die Schwächen der TableView aufmerksam geworden.

Allen voran stört mich der "Edit-Mode". Sprich, ich klicke auf ein Feld, dann wird ein Textfeld ge-rendered, ich bestätige und dann wird eine Methode ausgeführt. Was anfänglich als gute Idee ausgesehen hat, finde ich mittlerweile eher störend, weil wenn ich andere Elemente wie beispielsweise ein Drop-Down oder eine Checkbox hinzufügen will, hab ich diesen Edit-Mode nicht, weil eine CheckBox ja eigentlich immer anklickbar sein soll.

Deswegen hab ich da meist einen onChangeListener drangehängt und bei einem Text den EditMode automatisch via Key-Listener aktiviert sobald auf dem Feld etwas getippt wurde (weil wenn, dann will ich es schon überall gleich haben).

Genauso stört es mich, das man dauernd wieder den Fokus neu anfordern muss sobald man etwas ändert.
Am liebsten hätte ich eine Tabelle die sich verhält wie ein normales Excel-Sheet (natürlich ohne die ganzen Funktionsbausteine).
Ich will einfach nur Werte ausfüllen, von Spalte zu Spalte tabben können, evtl. mit ESC den Wert zurücksetzen wenn man sich vertippt hat und sämtliches Standardverhalten abgebildet haben.

Deswegen meine Frage an euch:

Kennt ihr vielleicht eine Library die sowas unterstützt?
Ich hab durch meine Googlerecherche nur ControlsFX gefunden und dort gab es anscheinend Mal eine TableView2, die dürfte allerdings nicht mehr entwickelt werden und eine SpreadsheetView von der ich befürchte, dass sie mehr in Richtung Excelfunktionen geht.

Grundsätzlich gefällt mir auch die herangehensweise von TornadoFX sehr gut, aber ich will eigentlich bei normalem JavaFX bleiben. Dazu kommt, dass TornadoFX auch nichts anderes als ein Wrapper für die normale TableView ist.

Ich bin ehrlich gesagt schon kurz davor mir eine eigene TableView zu schreiben, wollte aber vorher euch noch um Rat fragen ob es da nicht bereits etwas fertiges gibt.
Ich kann mir irgendwie nicht vorstellen, dass sowas elementares noch nicht existiert und sich jeder die Arbeit antut, jedes Mal die TableView so umzuändert, dass sie den eigenen Ansprüchen genügt. Diese typischen CRUD-Operationen sind ja eigentlich in so gut wie jeder Applikation vorhanden.



Entschuldigt bitte, dass ich soviel geschrieben habe, aber mir war es wichtig euch so genau wie möglich mein Problem zu beschreiben.


LG
Michi
 
L

lam_tr

Hallo,

Ich bin gerade dabei mich wieder vermehrt mit Desktop Applikationen auseinanderzusetzen und ein elementarer Baustein ist für mich die TableView in Verbindung mit den allseits bekannten CRUD Operationen.

Deswegen hab ich mich ein wenig tiefer mit der TableView in JavaFX auseinander gesetzt.
Anfangs noch recht begeistert bin ich - wie ihr euch sicherlich denken könnt - recht schnell auf die Schwächen der TableView aufmerksam geworden.

Allen voran stört mich der "Edit-Mode". Sprich, ich klicke auf ein Feld, dann wird ein Textfeld ge-rendered, ich bestätige und dann wird eine Methode ausgeführt. Was anfänglich als gute Idee ausgesehen hat, finde ich mittlerweile eher störend, weil wenn ich andere Elemente wie beispielsweise ein Drop-Down oder eine Checkbox hinzufügen will, hab ich diesen Edit-Mode nicht, weil eine CheckBox ja eigentlich immer anklickbar sein soll.

Deswegen hab ich da meist einen onChangeListener drangehängt und bei einem Text den EditMode automatisch via Key-Listener aktiviert sobald auf dem Feld etwas getippt wurde (weil wenn, dann will ich es schon überall gleich haben).

Genauso stört es mich, das man dauernd wieder den Fokus neu anfordern muss sobald man etwas ändert.
Am liebsten hätte ich eine Tabelle die sich verhält wie ein normales Excel-Sheet (natürlich ohne die ganzen Funktionsbausteine).
Ich will einfach nur Werte ausfüllen, von Spalte zu Spalte tabben können, evtl. mit ESC den Wert zurücksetzen wenn man sich vertippt hat und sämtliches Standardverhalten abgebildet haben.

Deswegen meine Frage an euch:

Kennt ihr vielleicht eine Library die sowas unterstützt?
Ich hab durch meine Googlerecherche nur ControlsFX gefunden und dort gab es anscheinend Mal eine TableView2, die dürfte allerdings nicht mehr entwickelt werden und eine SpreadsheetView von der ich befürchte, dass sie mehr in Richtung Excelfunktionen geht.

Grundsätzlich gefällt mir auch die herangehensweise von TornadoFX sehr gut, aber ich will eigentlich bei normalem JavaFX bleiben. Dazu kommt, dass TornadoFX auch nichts anderes als ein Wrapper für die normale TableView ist.

Ich bin ehrlich gesagt schon kurz davor mir eine eigene TableView zu schreiben, wollte aber vorher euch noch um Rat fragen ob es da nicht bereits etwas fertiges gibt.
Ich kann mir irgendwie nicht vorstellen, dass sowas elementares noch nicht existiert und sich jeder die Arbeit antut, jedes Mal die TableView so umzuändert, dass sie den eigenen Ansprüchen genügt. Diese typischen CRUD-Operationen sind ja eigentlich in so gut wie jeder Applikation vorhanden.



Entschuldigt bitte, dass ich soviel geschrieben habe, aber mir war es wichtig euch so genau wie möglich mein Problem zu beschreiben.


LG
Michi
Hi,

ich habe den edit Modus von TableView noch nicht wirklich ausgereift getestet, aber für solche Zwecke habe ich immer ein ListView ausgebaut mit einer CustomListCell. Da kann ich immer für jede Zeile ein Edit Modus einschalten und die Controls nacheinander durch tabben. Im Editmodus gibt es bei mir noch ein dirty Flag, erst wenn Änderung gegeben hat, wird abspeichern Button eingeschaltet.

Die TableViiew nach deinen Wünschen anpassen, ist schon etwas aufwendiger denke ich.

Grüße
lam
 
Thema: 

Alternative JavaFX TableView

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben