-1
我有一個要求,在選擇按鈕我需要處理一些東西,並根據結果必須設置文本在同一個按鈕。以下是示例代碼片段。在選擇按鈕內設置文本SWT中的同一個按鈕的監聽器
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);
}
});
}
}
得到任何幫助。
你的代碼看起來是正確的,你遇到了什麼問題或錯誤? –
它說** org.eclipse.swt.SWTException:無效的線程訪問**指向線'buttonLoadUser.setText(「Demo User」);' –
我想你需要向我們展示一個顯示問題的[mcve]這通常不應該給無效的線程訪問。 –