在SWT中相同按钮的选择监听器内的按钮上设置文本

时间:2016-06-28 10:32:54

标签: java swt jface

我有一个要求,在选择按钮我需要处理一些东西,并根据结果必须在同一个按钮上设置文本。以下是示例代码段。

    buttonOrganization = new Button(parent, SWT.PUSH);

    OrgSelectionBtnListener listnerButton = new OrgSelectionBtnListener( buttonOrganization, Session, false, false );
    buttonOrganization.addListener( SWT.Selection,
            listnerButton);

,OrgSelectionBtnListner类位于

之下
    private class OrgSelectionBtnListener  implements Listener,
PropertyChangeListener
{

public OrgSelectionBtnListener( Button orgButton, Session Session, boolean isUser, boolean isGrp )
{

}
@Override
public void propertyChange( PropertyChangeEvent evt )
{
    String propName = evt.getPropertyName();
    if( propName.equals( "OrgChanged" ) )
    {

        buttonOrganization.setText("new Group User");
    }
}

@Override
public void handleEvent( Event arg0 )
{
    buttonOrganization = ( Button ) arg0.widget;
    SwingUtilities.invokeLater( new Runnable()
    {
        //Display.getDefault().asyncExec(new Runnable() {
        //@Override
        public void run()
        {               
            orgSelectionDialog.addPropertyChangeListener( OrgSelectionBtnListener.this );
        }
    } );
}

}

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

将按钮变量设为私有或最终。使用Selected Listener的匿名类添加选择侦听器。

 btn.addSelectionListener(new  SelectionListener.... 

使用

在其方法和setText中执行任务

btn.setText(“”);

根据你的结果。