• 26.04.2024, 04:50
  • Registrieren
  • Anmelden
  • Sie sind nicht angemeldet.

 

Lieber Besucher, herzlich willkommen bei: Aqua Computer Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Java Nachhilfe : TableCellRenderer (Gelöst) - Neue Frage zu JSP!

Sonntag, 29. Januar 2012, 21:22

Hallo zusammen,

ich schraub schon länger an einem Java Projekt rum... ist das erste mal das ich wirklich eine GUI verwende... uA. habe ich eine Tabelle die als Input/Output Element dient...

Nun möchte ich das einige Felder als DropDown Menü oder Checkbox erscheinen... damit habe ich aber meine Liebe mühe... wenn ich richtig gewickelt bin hilft mir hier die Klasse TableCellRenderer weiter bzw. ich bau mir einen eigenen Renderer der vom TableCellRenderer erbt.

Ich komm aber nicht dahinter wie ich diese gescheit einsetze.
Eine kurze Nachhilfe für Dummies wäre hier echt klasse! Oder ein Link mit verständlichem Beispiel! Das Beispiel der JacaDoc durchdrin ich nicht so das es mir weiter hilft!

Sören


EDIT:

So das Problem ist gelöst... rennt jetzt so wies soll...


nun hab ich eine kleine neue Frage zu JSP... und zwar mach ich nebenher noch ein kleines Uni Projekt... da schreiben wir eine MVC Anwendung, ganz klassisch...

Ich habe eine View, also eine JSP/HTML Seite die sich ein Eingabeformular dynamisch zusammenbaut...
Mein Problem ist nun: wie fang ich in der Applikation (also in der empfangenden JSP) alle Werte ab? Ich weiß ja nicht wieviele es sind... Am besten wäre es wenn diese in einem Vector landen...

(Also nichmal erdeutlich ich hab ein <form> welches unterschiedlich viele <input> Felder hat, welche mit der post methode an eine andere JSP gesendet werden... dort weiß ich aber nicht wieviele input Feder in der view nun eigendlich waren... gibts da irgend eine gescheite Lösung für?)

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Man_In_Blue« (9. Februar 2012, 13:37)

A sinking ship is still a ship!

Montag, 30. Januar 2012, 23:43

Geht es um eine Desktop oder Webapplication?

Für Desktop schau dir folgendes mal an:
http://www.java2s.com/Code/Java/Swing-Co…/Grid-Table.htm

http://oswing.sourceforge.net/


Für Web schau dir das Primefaces Framework an. Wobei welche Faces Implementierung du nimmst ziemlich egal ist.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BloodHound« (30. Januar 2012, 23:50)

For Windows reboot
for Linux be root

Dienstag, 31. Januar 2012, 13:35

Hi,

danke für die links!

Hab zwischenzeitlich erst einmal eine provisorische Lösung gefunden.... aber ich glaub an anderer Stelle hilft mir das trotzdem weiter!

Sören
A sinking ship is still a ship!

Sonntag, 5. Februar 2012, 16:52

So nun habe ich doch nochmal ein Problem... an dem ich verzweifle...

nochmal von ganz vorne, ich habe hier ein Projekt bei dem ich aus drei Vectoren eine Tabelle bauen möchte.
Im 1. Vector stehen Strings für die 1. Spalte (nicht bearbeitbar)
im 2. Vector stehen bereits vorhandene Werte oder eben leere Strings... (soll bearbeitbar sein)
im 3. Vector steht wie die entsprechende bearbeitbare Zelle aussehen soll (Textfeld, Checkbox oder combobox)
Die Vectoren habe alle drei die gleiche Länge...


Dafür habe ich nun ein eigenes Table Model geschrieben
einen eigenen Table Renderer geschrieben
und einen eigenen Table Editor geschrieben...

Alle für sich genommen tun was sie sollen... die Tabelle hat das richtige Format, jede Zelle sieht so aus wie sie aussehen soll und ich kann die Daten eingeben die ich eingeben möchte...

Aber die Tabelle aktualisiert sich nicht... setz ich einen Haken in einer Checkbox ist er sofort wieder verschwunden, gebe ich einen Text ein ist es das selbe, auch bei der Combobox, ich kann meine Option auswählen und das wars...

Sie Daten kommen aber im ActionHandler an und die Methode "getCellEditorValue()" gibt den Wert zurück...
aber selbst wenn ich den return des getCellEdtoralue() manuell auf einen Text setze verlässt nichts die klasse... das mich mich langsam ein wenig mürbe...

Hat vielleicht jemand eine elegantere Lösung für mich oder weiß was ich Vergessen habe?
Vom Prinzip her ist es egal ob die Eingabe über eine Tabelle läuft, als ich angefangen hab erschien mir eine Tabelle am sinnvollsten da die drei Vectoren mal 5 oder auch mal 20 Elemte haben können, das ließ sich sehr einfach in das Table Model implementieren...

Aber langsam bin ich am verzweifeln... Vom prinziep her ist nur wichtig das der 2. Vector mit den Daten aktualisiert wird oder ein 4. Vector mit neuen Daten erstellt wird... die Änderungen sollten auf dem Monitor sichtbar sein...

Soll ich den ganzen quatsch mit der Tabelle vergessen und mir lieber etwas anderes überlegen? Da sind jetzt schon etliche Stunden rein geflossen...

Sören

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Man_In_Blue« (5. Februar 2012, 17:05)

A sinking ship is still a ship!

Sonntag, 5. Februar 2012, 23:40

Ich glaube du machst das ganze zu kompliziert.
Du brauchst einen Vector für die Tabellenüberschrift. Das hast du auch so gemacht. Dann brauchst du einen Vector der Vectoren aufnimmt. Zumindest habe ich so das ganze damals gemacht. Ist zwar leider auch schon etwas länger her.
Allerdings habe ich das Bearbeiten mit einem Dialog gemacht. Find ich auch angenehmer und besser. Ist aber eben eine Geschmackssache. Damit brauchst du dann in der Table nur mehr ein DefaultTableModel.
Wenn du willst such ich mal so ein Beispiel raus und stell dir den code auf Github.
For Windows reboot
for Linux be root

Mittwoch, 8. Februar 2012, 10:09

Die einfachen Beispiele kenn ich... die taugen nix für meine PRoblemstellung... habe das Problem aber identifizieren können...

Sören
A sinking ship is still a ship!

Donnerstag, 9. Februar 2012, 13:38

So das Problem ist gelöst... rennt jetzt so wies soll...





nun hab ich eine kleine neue Frage zu JSP... und zwar mach ich nebenher
noch ein kleines Uni Projekt... da schreiben wir eine MVC Anwendung,
ganz klassisch...



Ich habe eine View, also eine JSP/HTML Seite die sich ein Eingabeformular dynamisch zusammenbaut...

Mein Problem ist nun: wie fang ich in der Applikation (also in der
empfangenden JSP) alle Werte ab? Ich weiß ja nicht wieviele es sind...
Am besten wäre es wenn diese in einem Vector landen...



(Also nichmal erdeutlich ich hab ein <form> welches
unterschiedlich viele <input> Felder hat, welche mit der post
methode an eine andere JSP gesendet werden... dort weiß ich aber nicht
wieviele input Feder in der view nun eigendlich waren... gibts da irgend
eine gescheite Lösung für?)
A sinking ship is still a ship!

Donnerstag, 9. Februar 2012, 20:03

quick&dirty hack:
den input-feldern duchrnummerierte Namen geben und dann im empfangenden Formular hochzählen, bis keins mehr gefunden wird...
Gute work-live-balance ist, wenn man von seinem Privatleben erschöpfter ist als von der Arbeit.

Dienstag, 14. Februar 2012, 16:17

Als erstes würde ich anfangen mich mit dem MVC Konzept vertraut zu machen.
JSP ohne Framework sind tot! Es hat null Sinn so etwas zu noch irgendwo einzusetzen.
Wenn du im Bereich JSP bleiben willst schau dir Spring an. Wenn du lieber mit JSF arbeiten willst nimm ein Faces Framework wie Richfaces oder Primefaces oder Icefaces.
Du brauchst im Prinzip für jedes Feld einen setter bzw getter. Den Rest macht das Framework für dich. Einfach nur mehr die Werte vom Objekt auslesen und fertig.
Mit Dynamisch meinst du da eine bliebige Anzahl an Textfeldern oder Tabellenzeilen?
Da hast du alles anhand von Beispielen für Primefaces:
http://www.primefaces.org/showcase-labs/ui/home.jsf


Du musst ja irgendwo die Felder bzw sonstige Inputs erzeugen. Wenn du sie erzeugst setz dir eine Variable auf den Wert wieviele Felder es gibt.
Deine Angaben sind leider etwas zu ungenau um dir genau zu helfen.
For Windows reboot
for Linux be root

Donnerstag, 16. Februar 2012, 16:23

Huhu,

hatte es zwischenzeitlich schon gelöst. Mit GetPropertyNames und einer while Schleife welche dann die Werte in einen Vector schreibt...


Die Anwendung ist MVC... was hatten des nun mit Frameworks zu tun?
Frameworks sind in der Arbeit leider nicht erlaubt, sonst hätte ich sicher hibernate und JSF verwendet ;)
Aber da sind wir etwas "eingeschränkt"...

Sören
A sinking ship is still a ship!

Donnerstag, 16. Februar 2012, 19:18

Software ohne die besten Bibliotheken und Frameworks entwickeln zu müssen ist irgendwie ziemlich kontraproduktiv.

Donnerstag, 16. Februar 2012, 21:50

joooo...

ist halt eine Seminarleistung an der Uni... ich hab mir das nicht ausgedacht ;)
Denke da geht es sich um die Messbarkeit der Leistung oder weiß der Teufel...

wir hinterfragen sowas ja nicht :-D

Sören
A sinking ship is still a ship!

Ähnliche Themen