Zum Inhalt springen

Brunswick

Mitglieder
  • Gesamte Inhalte

    45
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Brunswick

  1. Brunswick

    Problem mit JTable

    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.
  2. Brunswick

    JFrame größe

    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...
  3. 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.
  4. Hat sich erledigt. Wenn möglich, Thread bitte löschen
  5. 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.
  6. 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.
  7. 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.
  8. 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?
  9. 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.
  10. 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
  11. 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;
  12. 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.
  13. 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
  14. 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').
  15. Weiß zufällig jmd, wieviel Bytes Oracle benötigt, um einen NULL-Wert zu speichern?
  16. Also im begin end rahmen ists drin, also im pl/sql block. hab aber die zeile vergessen, daher kam nix: SET SERVEROUTPUT ON SIZE 1000000 Danke
  17. Hab wohl nen Fehler gemacht beim Aufruf. Mit deiner Methoda (@dateiname) funktionierts jetzt, alelrdings ignoriert er die Ausgaben im PL/SQ Teil. Kann ich keine dbms_output.put_line Asugaben machen in meinem Script (im PL/SQ Block), wenn ich das ganze im SQL*Plus laufen lasse? Wie bekomme ich denn ne Ausgabe raus (Datei oder Bildschirmausgabe)
  18. Ich habe folgendes Problem: wenn ich die Kommandos ACCEPT variable CHAR PROMPT 'Variablenwert angeben: ' oder aber das Kommando SET ECHO OFF in der Kommandozeile von SQL*Plus direkt eingebe, führt SQL*Plus diese aus. Benutze ich die Kommandos aber innerhab eines Scripts und lade dieses in SQL*Plus, so bekomme ich einen ORA-00900 INVAILD SQL-Statement (bei Accept) bzw ein ORA-00922 INVAILD OR MISSING OPTION Jmd ne Idee woran das liegt, sind doch beides gültige SQL*Plus Kommandos? (Benutzt wird Oracle SQL*PLUS 9.2.0.1.0)
  19. Ich möchte die durchschnittliche Satzlänge innerhalb verschiedener Tabellen anhand eines L/SQL Skripts ermitteln. Als Eingabeparameter kommen der Owner der Tabelle sowie der Tabellenname selber ins Skript. Habe mein Skript in nem Entwicklungstool geschrieben und dort lief es auch, allerdings muß es produktiv werden und dort SQL*PLUS konform laufen, was es aber anscheinend nicht tut. Leider weiß ich allerdings nicht mehr weiter, mein Skript liest sich bislang wie folgt: ACCEPT p_owner CHAR PROMPT 'Owner: '; ACCEPT p_table CHAR PROMPT 'Table: '; DECLARE cursor c1 is SELECT column FROM tabelle WHERE owner = '&&p_owner' AND table = '&&p_table' total_bytes NUMBER := 0; column_bytes NUMBER := 0; BEGIN FOR r_c1 in c1 LOOP SELECT round(avg(nvl(vsize(r_c1.column),0)+1)) INTO column_bytes FROM &&p_owner.&&p_table; total_bytes := total_bytes + column_bytes; END LOOP; dbms_output.put_line(total_bytes); EXCEPTION WHEN OTHRS THEN dbms_output.put_line(sqlerrm); END; Habs schon versucht umzubauen, indem ich mir den Select in der Schleife zusammensetze als String und dann den String mit execute absende, aber das bringt auch nichts, da er in der Stringkonkatanierung die Parameter nicht erkennen will. Weiterhin kann ich im SQL*Plus keine Werte für meine Parameter angeben bzw nur einen Wert für p_table, p_owner setzt er direkt automatisch auf blank Laufen muß das ganze unter SQL*Plus Version 9.2.0.1.0, die DB ist noch eine Oracle 8.1.6
  20. Ist es bei einer DB2 DB möglich, einen Satz automatisch zu löschen, wenn dieser eine bestimmte Zeit lang nicht mehr verändert wurde? Z.B. schreibe ich einen User, der sich angemeldet hat in eine Tabelle und lösche in beim Logout. Wenn jetzt allerdings kein Logout durchgeführt wird (weil z.B. das System abstürzt), stünde der User noch in der Tabelle und könnte sich nicht anmelden. Könnte ich den Satz automatsich entfernen lassen durch DB2, wenn an ihm kein Update in ner bestimmten zeitspanne durchgeführt wurde?
  21. Hallo the_red_one, hier "mein Senf": Also bei 4.5 ist der Betrag von dem auszugehen ist 3.375€, da dies die Beitragsbemessungsgrenze ist, sprich der angesprochene Arbeitnehmer braucht alles über diesem Betrag nicht für die Berechnung der PV herzunehmen. Daher: 3375€ * 1,7/2 und das ganze dann durch 100 zu 3.5: integer is denk ich zu klein, da es nicht ausreicht um alle möglichen plz mit 5 stellen darzustellen zu 2.6: du hast folgende Felder und Feldgrößen: ANR - 5 Byte ABEZ - 50 Byte L - 5 Byte (da laut Vorgabe 5 Zeichen Platz benötigt) B - 5 Byte (da laut Vorgabe 5 Zeichen Platz benötigt) D - 5 Byte (da laut Vorgabe 5 Zeichen Platz benötigt) PREIS - 7 Byte (da laut Vorgabe 7 Zeichen Platz benötigt) SONST - 15 Byte dazu kommen noch: insgesamt 2Byte für den Line feed und Carriage Return 6 Byte für TAB-Felder (zwischen jedem Datenfeld des Datensatzes (7 felder wie oben aufgeführt und somit sechs "Zwischenräume" Ã 1 Byte) Macht zusammen dann: 5 + 50 + 5 + 5 + 5 + 7 + 15 + 2 + 6 = 100 Byte 100 Byte mal 1000 Sätze = 100.000 Byte 100.000 Byte / 1024 (zw. Umrechnung in KByte) = 98 KByte (gerundet)
  22. Ok, dann versuche ich meine Lösungen nochmal zu begründen, bei denen ich anderer Meinung bin: also 1.7 ist auch bei mir eher Werbung bzw wenn eine Unterstützungsabsicht wie hier vor liegt (Förderungsgedanke im Vordergrund) fällt es in den Bereich des Sponsoring 2.3 ist die Größe des L2-Caches gefragt, was für mich auch nicht eindeutig ist, da es sich bei Cache zwar um einen Zwischenspeicher handelt, allerdings für den Prozessor und er seit der Generation des Pentium 2 auch auf diesem physikalisch draufsitzt daher war für mich 1 und 2 schlüssig als zuordnung zudem die zuordnung des virtuellen adressraums, allerdings kann ich mich dort nur auf andere beziehen http://www.benenati.de/vwa/VWA_V3_3.pdf dort ist die zuordnung fast identisch, nur der virtuelle adressraum ist dem speicher zugeordnet, allerdings versuche ich noch anderweitig material darüber einzuholen 3.1 habe ich ebenfalls wie a|da 849,32 als Lösung, da er 17% abschlag auf die verrsicherung bekommt und ich den aufgabentext so aufgefasst habe, daß zwar die basispämie angegeben ist, er jedoch die 17% auf die tatsächliche prämie bekommt (also 200€ + 2% aufschlag). ungenaue formulierung denke ich in diesem fall und daher sollte evtl auch hier beides als richtig gewertet werden, da die aufgabe an sich verstanden und gelöst wurde (bitte korrigieren falls dem nicht so ist) 3.2 meine lösung hier wäre 731€. wenn ich nun ins struktogramm schaue, kann ich mir auch erklären wie der ihk-wert zustande kommt, den er entspricht 731 * 0,95, also dem WAHR-Zweig des Struktogramms bei mindestens 5 Verträgen. Allerdings kann ich nicht in den zweig kommen, da die Variable anz_vertraege gleich 4 ist und nur der zähler z den wert 5 besitzt. somit denke ich ist die musterlösung in diesem falle nicht korrekt Da du ja Prüfer bist, wie oben geschrieben wurde, würde mich mal interessieren, was du zu meinen Kommentaren sagst, besonders bei Aufgabe den letzten drei Punkten (die beiden Werte und der cache)
  23. @timmi-bonn stehen wie der name vermuten lässt da die vorläufigen lösungen auch drin? könntest du die evtl dann mal posten? wäre echt nett, thx
  24. Der Paragraph zur Wählbarkeit bezieht sich allerdings auf Betriebsratswahl und nicht auf die JAV

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...