2013-01-18 77 views
5

此刻工作不正常,但已经提出了JFace的一个小问题。 我最需要的是有一个复选框,允许下一个按钮变为活动状态。选中监听器中的复选框

下面是代码

Button btnConfirm = new Button(container, SWT.CHECK); 

    btnConfirm.addSelectionListener(new SelectionAdapter() { 
    @Override 

    public void widgetSelected(SelectionEvent e) { 

      //missing if statement   
      setPageComplete(true); 
     } 
    }); 

    btnConfirm.setBounds(330, 225, 75, 20); 
    btnConfirm.setText("Confirm"); 

预先感谢任何帮助

编辑 我试图做的是建立一个菜单,其中有一些之前接受的条款和条件,他们可以超出一个点 默认为空白,但当选中该框时,将出现下一个按钮,如果不是,则下一个按钮将保持不活动状态。

+1

你的问题是不完整的。你想做什么,什么是不工作? – Baz

回答

10

只是使ButtonfinalListener内访问:

final Button btnConfirm = new Button(shell, SWT.CHECK); 

btnConfirm.addSelectionListener(new SelectionAdapter() 
{ 
    @Override 
    public void widgetSelected(SelectionEvent e) 
    { 
     if (btnConfirm.getSelection()) 
      setPageComplete(true); 
     else 
      setPageComplete(false); 
    } 
}); 

或者,您可以通过SelectionEventButton

Button btnConfirm = new Button(shell, SWT.CHECK); 

btnConfirm.addSelectionListener(new SelectionAdapter() 
{ 
    @Override 
    public void widgetSelected(SelectionEvent e) 
    { 
     Button button = (Button) e.widget; 
     if (button.getSelection()) 
      setPageComplete(true); 
     else 
      setPageComplete(false); 
    } 
}); 
+0

感谢您的帮助 –

+0

@KeithSpriggs很高兴我能提供帮助。 – Baz

+1

...或者只是'setPageComplete(button.getSelection());'。 –