-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]を示す必要があると思いますこれは通常、無効なスレッドアクセスを与えるべきではありません。 –