# Elemente eines ViewParts



## drueber (25. Mai 2010)

Hallo, ich hab einen ViewPart, in dem ich gewissen Elemente definiere.

Das ganze sieht so in etwa aus:


```
public void createForm(Composite parent) {
		Group formGroup = new Group(parent, SWT.BORDER_SOLID);		
		GridLayout formLayout = new GridLayout(2, false);		
		formGroup.setLayout(formLayout);
		formGroup.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false, 2,
				1));
		
		GridData tfDataDefault = new GridData();
		tfDataDefault.horizontalAlignment = GridData.FILL;
		tfDataDefault.grabExcessHorizontalSpace = true;
		GridData tfDataSmall = new GridData(GridData.FILL);

		Label lblVorname = new Label(formGroup, SWT.LEFT);		
		lblVorname.setText("Vorname:");
		this.txtVorname = new Text(formGroup, SWT.LEFT | SWT.BORDER);
		this.txtVorname.setLayoutData(tfDataDefault);
		{...}
	}
```

Gibt es eine Möglichkeit, dass ich an einer anderen Stelle, alle definieren Elemente bekomme? Also im speziellen alle Textfelder. Irgendwie mit Viewpart.getAllText();???

Danke.


----------



## Gast2 (25. Mai 2010)

Soviel ich weiß nicht... Was willst du denn machen??
Du kannst über den parent alle Controls auslesen...


----------



## drueber (25. Mai 2010)

Ich hab gewisse Eingabefelder für die Suchkritierien. Auf diesen Feldern ist ein FocusListener, der überprüft ob die Eingabe richtig ist, wenn der Focus verloren geht. Das funktioniert auch soweit.

Zuusätzlich dazu will ich, dass man neben dem einem Suchen-Button auch noch das Suchen-Commando mit der Enter-Taste ausführen kann. Dazu hab ich mal in der plugin.xml die notwendigen Änderungen gemacht und eine Action zu meinem View dazugefügt. Das funktioniert auch.

Das Problem ist jetzt, wenn ich in einem Feld bin, eine falsche Eingabe mache udn dann auf Enterdrücke, dann wird die falsche Eingabe abgesendet...weil ja der Focus nicht verloren geht. 

Hat jemand einen Lösungsvorschlag?


----------



## maki (25. Mai 2010)

> Hat jemand einen Lösungsvorschlag?


Wie wäre es mit  "dem richtigem Weg"?

Eclispe RCP bietet DataBinding, inklusive Konvertierung und Validierung, da brauchst du deine selbstgebackene Lösung nicht.


----------

