auf Checkbox regieren und Textfeld aktivieren

jacos

Grünschnabel
Hallo,

ich steh gerade total auf dem Schlauch.

Ich zeige in einem Dialogfenster eine Checkbox und ein Textfeld an.
Die Checkbox ist nicht angekreuzt und das Textfeld ist disabled.
Wenn ich jetzt die Checkbox ankreuze soll das Textfeld enabled werden.

Ich schaff es dass ich auf der Konsole ausgebe ob angekreuzt ist oder nicht. Ich weiss aber nicht wie ich die Verbindung zu dem Textfeld schaffe.
Codeschnipsel:
Java:
                final Button button = new Button(comp, SWT.CHECK);
		GridData data = new GridData();
		data.horizontalIndent = 15;
		button.setLayoutData(data);
		button.setText("Netzwerkcomputer");
		button.setSelection(false);
		
		button.addSelectionListener(new SelectionAdapter()
		{		
			public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) 
			{
				boolean selected = button.getSelection();
				if (selected == true) 
				{
					System.out.println ("Check Box is checked");					
				}
				else
				{
					System.out.println ("Check Box is not checked");
				}
			}
		});
	
		// Dieses Textfeld soll aktiviert werden
		final Text dbPath = new Text(comp, SWT.CHECK);
		dbPath.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		dbPath.setText("localhost");
		dbPath.setEnabled(false);

kann mir jemand auf die Sprünge helfen

Danke!
 
Wie wäre es ganz einfach mit:
Java:
if (selected){
  dbPath.setEnabled(true)
}
in deinem ActionListener!? :rolleyes:
Natürlich musst du vorher das Textfeld bereitsellen.
 
Zuletzt bearbeitet:
Wenn die Abfrage der Selektion stimmt, dann setzt doch einfach da, wo du die Konsolenausgabe machst, die Eigenschaft "enabled" Textfeld auf false bzw. auf true.
 
nein, das hatte ich auch schon versucht, allerdings kennt er im Listener die Variable dbPath nicht.

edit: ok hat sich erledigt. Funktinoiert wenn der Listener hinter dem Textfeld steht :)

Dank euch
 
Zurück