Brunswick
Mitglieder-
Gesamte Inhalte
45 -
Benutzer seit
-
Letzter Besuch
-
Ich hatte bei meinem Abschlußprojekt ein ähnliches Problem. Letztlich war die einzige Möglichkeit, die ich gefunden habe, ein eigenes TableModel zu schreiben, in welchem ich in der setValueAt Methode den Wert an der entsprechenden Stele im TableModel angepasst habe. Den Source kann ich dir leider nicht posten, da ich inzwischen in ner anderen Firma arbeite und auf den Code keinen Zugriff mehr habe.
-
Fokussieren eines textfeldes sollte so gehen JTextField lTextField = new JTextField(); ltextField.requestFocus(); Den Fokus ändern, wenn Eingaben gemacht werden, kannst du dann über Listener, z.B. bei Buttonklick oder eben Texteingaben...
-
Also wenn du eine Zelle selektiert hast, sollte das deselektieren funktionieren, wenn du folgendes aufrufst: tabelle.changeSelection(zeilenindex, spaltenindex, true, false) Allerdings muß die Tabelle hierzu sowohl zeilen als auch spaltenbasierte Selektionen zulassen, also beiden Parameter auch auf true setzen) Ich würds gerne beschreiben, allerdings habe ich das Problem, daß ich das Ganze recht einfach lösen konnte, weil ich alle Daten schon über eine Adapterklasse hatte: Ich habe über jene Klasse die Zwischenablage für copy/paste- Zwecke eingebunden. Da die fokussierte Zelle in der JTable anscheinend immer der aktuelle Ankerpunkt ist, brauchte ich somit aus meinen Daten bloß die gegenüberliegnde Zelle des Rechtecks zu ermitteln und dann hab ich folgende Zeile aufgerufen: tabelle.changeSelection(zeilenindex, spaltenindex, false, true) Damit selektiert er alle Zellen zwischen dem Ankerpunkt und der anhand der Indices angegebenen Zelle PS: Sehe gerade, du wolltest alle Zellen deselektieren, dazu müsstest du den Fokus (und somit den Ankerpunkt) also auf die 1.Zelle setzen und dann die letzte Zelle (also die gegenüberliegende) per Indices im Statement von oben angeben.
-
Hat sich erledigt. Wenn möglich, Thread bitte löschen
-
Wenn ich ne tabelle mit z.B. 5 Zeilen und Spalten habe, wie kann ich dann im Programm selber beispielsweise die Zellen mit den Koordinaten (Zeile2, Spalte 2), (Zeile2,Spalte3), (Zeile3/Spalte2), (Zeile3,Spalte3) selektieren? Blockweise würde reichen, sprich dass ich immer ein Rechteck selektiere aus der Tabelle, müssen also nicht unbedingt auch Selektionen gehen à la Zeile 1 Spalten 3-5, Zeile 2 nur Spalte 3, Zeile 3 Spalten 2-4. Hab schon zig Sachen versucht, aber irgendwie kann ich nirgendwo ein Intervall setzen, obwohl es wohl irgendwas wie Anchor gibt, daß als Ankerpunkt fungiert und wo man dann nur noch nen Intervalpunkt angeben muß, der den gegenüberliegenden Punkt im selektierten Rechteck darstellen würde. Aber leider weiß ich nicht, wo ich die beiden Punkte setzen kann.
-
Wie bereits oben gesagt: Ich würd die Programmiersprache bzw Datenbank erwähnen, warum du letztlich Sprache X oder Y hernimmst, würde ich aber dann auch in der Doku ausführen. Und ansonsten denk ich passt das schon. Wir haben bei uns die Erfahrung gemacht, dass die Projektanträge relativ unkompliziert genehmigt werden, wenn Thema und Zeit halbwegs für ein Abschlussprojekt passen. Brauchst dir also denk ich keine großen Sorgen zu machen, dass der nicht durchgeht.
-
Habs jetzt nur schnell überflogen, aber wenn ich mich recht erinnere, sollte im Projekttitel was über die technische Umsetzung (Programmiersprache z.B.) stehen, da auf Basis des Titels deines Projekts die Prüfer zugeteilt werden. Außerdem denke ich, dass das Verhältnis 45 Std. Entwicklung / Konzepterstellung gegenüber nur 3(!) Std. Test nicht sehr ausgewogen ist. Aber höre erstmal, was dir andere hier sagen, sind schließlich einige Prüfer im Forum aktiv.
-
Solange ich keinen Commit absetze, werden meine Befehle doch im SQL-Buffer gespeichert? Wie groß ist der Buffer denn? Ist es möglich, hunderte INSERTS "zwischenzulagern", um diese dann abschließend alle auszuführen?
-
Ich hab mein eigenes TableModel. Dem übergebe ich normalerweise das ResultSet meiner Datenbankabfrage, wo ich den Tabelleninhalt erhalte. Nur is dieses ResultSet jetzt halt leer und dann hab ich nur die Spaltenköpfe und hab bislang keine Möglichkeit gefunden, einfach ne leere zeile in der JTable in diesem Fall anzuzeigen.
-
Hallo, hat jemand ne Idee, wie ich folgendes Problem lösen kann: Ich habe aus der ORACLE-DB die Spaltennamen der Tabelle in einem Vector gespeichert. Leider hat die Tabelle keinen Inhalt, weshalb mein benutzerdefiniertes TableModel leer ist und somit keine Sätze gezeigt werden (da auch keine vorhanden sind). Da der Anwender aber über die JTable neue Sätze anlegen können soll, muss ich ihm eine Art leeren Dummysatz einfügen in meine JTable, in welchem er dann rumeditieren darf. Es geht weder um Editieren oder sonstige Dinge, das einzige woran ich derzeit scheitere, ist einen Konstruktor zu finden, dem ich zwar meine Spaltennamen übergeben kann, der aber keine Tabellendaten erwartet sondern mir leere Zeilen einfügt. Sozusagen ne Mischung aus new JTable(int, int) und JTable(Vector, Vector). Ich schaffe es halt bloss, die richtige Spaltenzahl zu generieren und drunter leere Zeilen einzufügen (über den int/int Konstruktor), habe aber dann nur Spaltennamen wie A,B,C,... Danke schonmal für jegliche Tips
-
Ich kenne MySQL nicht, evtl hilfts dir trotzdem: Unter ORacle gehts so, wenn ich dein Problem richtig verstehe: select * from ( select edat from `NA_messages` where empfaenger = 'Netsrac' AND rownum<200 order by datum asc) order by datum desc;
-
dual ist eine dummytabelle unter oracle, die jeder user nutzen kann. sie besteht aus einer dummyspalte und einer zeile mit dem wert x (x is hier halt sysdate). WHERE (HOT_Ticket.Erfassungsdatum 'MM' = select sysdate 'MM' from dual) vorausgesetzt, deine spalte erfassungsdatum ist im date format. du musst über die formatangabe des datums dein erfassungsdatum auf moat einschränken und das ganze mit nem ebenfalls auf monat eingeschränkten subselect mit sysdate vergleichen.
-
Kenne das Format deines Vergleichswerts nicht, aber angenommen es wäre char, dann müsstest du deine variable im where vergleichen mit dem ergebnis aus: select to_char(sysdate, 'MM') from dual alternativ geht auch statt 'MM' (Monat als zweistellige Zahl): 'MON' (dreistelliger Monatsname z.B. FEB für Februar) 'MONTH' (MONATSNAME, -> 'Month' ergibt Monatsname....) sollte funktionieren, kann derzeit leider nicht auf unsere DB hier connecten ums selber vorabzutesten, da die neue Version aufgespielt wird
-
ok, thx
-
Aber soweit ich weiß gibts doch nen Platzhalter, sofen NULL nicht am Satzende auftritt, sondern im weiteren Verlauf des Satzes noch Datenwerte folgen (z.B Spalte 4 NULL, , Spalte5 NULL, Spalte6 'MÜLLER').