carookee - group communication for you
Home / JavaForum / Swing + AWT
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
4.750 User online
2 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 1447 von 1460 (99%) |<   <   >   >|

Autor Gast
Datum 10.08.06, 18:00
Betreff SWT


Hallo für alle,

in meinem Programm, werden bestimmte Labels und Felder agezeigt, abhängig von einer Selektion :ZB wenn ein "String" selektiert wird, sieht man bestimmte Felder in der betroffenen Gruppe (sagen wir mal Group A)
In diesen Felder wird ein Text eingegeben und dann eigelesen und gespeichert (in einer xlm Datei)
Mein Problem besteht darin, wenn man die erste Selektion macht, werte eingibt läuft all das perfekt.Aber ab der zweiten Selektion bleibt das Display von der ersten in der Gruppe A und dazu kommen das, von der zweiten überlappend.

Welche Methode dient dazu, den alten Display verschwendet und nur den neuen in der Gruppe zu visualisieren?

Für mehr Details:

Die Widgets, die in der Gruppe befinden, änerdern sich abhängig von einer TreeSelektion. Dann sollte ein Text eingegeben werden. Der wird eingelesen mit getText.
Dafür habe ich ein Selectionlistener zum Tree addiert und abhängig von dem selektierten String im Tree, habe ich die entsprechende methode aufgerufen. Das sieht ungefähr so aus:



Java:
secondTree.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
TreeItem[] itm2 = secondTree.getSelection();
String selection = itm2[0].getText();
atrrType = selection.substring( selection.indexOf('#')+ 1,selection.length() );
if (atrrType.equals("string")){
createTextAttr();
}
else {
if (atrrType.equals("int")){
createItervallAttr();
}
}
});





Ein Beispiel von den angerufenen Methoden wäre:


Java:
public void createTextAttr() {
Label lValue = new Label(attrGroup, SWT.NONE);
tDetail = new Text(attrGroup, SWT.BORDER); // Für die Eingabe
Group scaleGroup = new Group(attrGroup, SWT.NONE);
textScale = new Scale(scaleGroup, SWT.HORIZONTAL);
Label lLow = new Label(scaleGroup, SWT.NONE);
Label lHigh = new Label(scaleGroup, SWT.NONE);

lValue.setText("Value: ");
lValue.setBounds(30, 63, 30, 20);
tDetail.setText("Karlsruhe");
tDetail.setBounds(80, 60, 100, 20);
scaleGroup.setText("Importance");
scaleGroup.setBounds(30, 123, 220, 100);
textScale.setBounds(10, 20, 200, 40);
textScale.setMaximum(5);
textScale.setMinimum(0);
textScale.setPageIncrement(1);
lLow.setText("low");
lLow.setBounds(15, 65, 20, 20);
lHigh.setText("high");
lHigh.setBounds(189, 65, 20, 20);
}




Deine Hilfe wäre mir sehr wertvoll!
Vielen Dank im voraus.


 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com