JeFi Geschrieben 29. Juli 2004 Geschrieben 29. Juli 2004 Hallo! Ich habe ein Problem mit dem Auslesen einer SWT Table da kann ich nur mit Item.getText() die Item Texte auslesen aber was auf Spalte 2 und 3 ist komme ich nicht! Hinzufügen habe ich so gemacht: Hashtable ht = fParser.FileParsen("c://Hallo.java", Query.getExp("Java")); TableColumn tableColumn1 = new TableColumn(table, SWT.NONE); tableColumn1.setWidth(310); tableColumn1.setText("Literale"); tableColumn1 = new TableColumn(table, SWT.NONE); tableColumn1.setWidth(100); tableColumn1.setText("Key"); tableColumn1 = new TableColumn(table, SWT.NONE); tableColumn1.setWidth(50); tableColumn1.setText("Lock"); for (int i = 0; i < ht.size(); i++) { TableItem item = new TableItem(table, SWT.NONE); } TableItem[] items = table.getItems(); Enumeration emu = ht.keys(); for(int i=0; emu.hasMoreElements();i++){ items[i].setText(0, (String)emu.nextElement()); TableEditor editor = new TableEditor(table); Text text = new Text(table, SWT.NONE); editor.grabHorizontal = true; editor.setEditor(text, items[i], 1); editor = new TableEditor(table); Button check = new Button(table, SWT.CHECK); check.pack(); editor.minimumWidth = check.getSize().x; editor.horizontalAlignment = SWT.CENTER; //editor.grabHorizontal = true; editor.setEditor(check, items[i], 2); } Vielen Dank im Voraus Zitieren
kingofbrain Geschrieben 29. Juli 2004 Geschrieben 29. Juli 2004 Servus, nimm für Code bitte die Code-Tags. Um an die Texte aus anderen Spalten zu kommen, musst Du getText(int index) nehmen. Peter Zitieren
JeFi Geschrieben 29. Juli 2004 Autor Geschrieben 29. Juli 2004 Uhi bin ich glatt hatte da wohl nicht richtig geschaut vielen Dank! PS das mit den CodeTags mache ich beim nächten mal danke für den Tipp! CU Zitieren
JeFi Geschrieben 29. Juli 2004 Autor Geschrieben 29. Juli 2004 Das Problem ist doch noch nicht gelösst habe ja via Editor ein Text bzw Checkcomponente! Und wenn ich da mit item.getText(1) zugreife ist das logischerweise nix :-( Zitieren
kingofbrain Geschrieben 29. Juli 2004 Geschrieben 29. Juli 2004 Ok, also Dein Problem habe ich jetzt leider nicht mitbekommen. Kannst Du nochmal sagen, was Du genau brauchst? Du willst der Tabelle einen Editor zuweisen, damit die Zellen editiert werden können. Richtig? So wie Du es machst, sollte es eigentlich gehen. Zum Thema Table und TableEditor kann ich Dir auch diese Seite empfehlen: http://dev.eclipse.org/viewcvs/index.cgi/%7echeckout%7e/platform-swt-home/dev.html Dort sind ein Haufen Code-Schnipsel zu finden. Peter Zitieren
JeFi Geschrieben 29. Juli 2004 Autor Geschrieben 29. Juli 2004 Ich will eine Tabelle mit 3 Spalten haben 1 Spalte nicht editierbarer Text 2. Spalte editierbaren Text und 3. Spalte Checkbox. Mit Hilfe des TableEditors habe ich hinbekommen das die 2. Spalte ein Textfeld ist welches ich bearbeiten kann aber nicht rausbekomme was drin steht :-( und das gleiche in der 3. Spalte mit der Checkbox anzeige und bearbeiten geht aber auslesen nicht :-(. Zitieren
kingofbrain Geschrieben 29. Juli 2004 Geschrieben 29. Juli 2004 Ok, ich glaube, ich weiss jetzt, was Du willst. Dein TableEditor setzt sich über die eigentliche Zelle und verdeckt diese. Es ist also ein ganz normales Textfeld, das keinen Rahmen hat und vor der Tabelle liegt. Wenn Du da was reinschreibst, dann steht das zwar im Textfeld, aber nicht in der Zelle. Der Weg, Zellen editierbar zu machen, ist Folgender: Auf irgendein Event hin (z.B. Doppelklick oder Tastenkombination) fügst Du zu einer bestimmten Zelle einen Editor hinzu. Dieser ermöglicht das aufnehmen von Daten. Nach dem Eintragen muss der User sagen, dass er fertig ist mit editieren, z.B. mit einerm ENTER oder einer anderen Tastenkombination. Daraufhin wird der Text aus dem Editor in die Zelle übernommen und fertig. Genauso wird es im Beispiel auf der von mir geposteten Seite gemacht. Schau Dir das einfach mal an. Peter Zitieren
JeFi Geschrieben 29. Juli 2004 Autor Geschrieben 29. Juli 2004 Ja so hatte ich das auch verstanden das es da nur drüber gesetzt wird und ich deshalb nicht dran komme! Die Seite kannte ich auch schon hatte das aber noch nicht gesehen gehabt hatte nur unter table geschaut! Aber wie ich ebend festsellen musste gibts da noch nen Punkt TableEditor und da stehts dann wohl drin! Dank dir erstma ma schaun ob ichs hinbekomme *g* Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.