私は rcp アプリケーションを開発しています。Novocode swt バルーン ウィンドウを使用しています。ボタンクリック時に1つのBaloonWindowを表示する必要がありますが、ボタンをクリックするたびに新しいバルーンウィンドウを作成します
私のコードは以下です
public Object execute(ExecutionEvent event) throws ExecutionException {
try {
BalloonWindow baloonWindow=new BalloonWindow(HandlerUtil.getActiveWorkbenchWindow(event).getShell(),SWT.ON_TOP|SWT.TOOL|SWT.CLOSE);
baloonWindow.setText("XYZ");
baloonWindow.setAnchor(SWT.RIGHT|SWT.TOP);
baloonWindow.setLocation(1290, 90);
Composite c = baloonWindow.getContents();
String array[]=new String[2];
array[0]="A";
array[1]="B";
c.setLayout(new FillLayout());
TableViewer t=new TableViewer(c,SWT.NONE);
t.setContentProvider(new ArrayContentProvider());
t.setInput(array);
c.pack(true);
baloonWindow.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
誰でも私を助けることができます.一度に1つのバルーンウィンドウのみを表示する方法.バルーンウィンドウが開いている場合は、別のバルーンウィンドウを開くことを許可しないか、任意の時点で1つのバルーンウィンドウのみを開いておく必要があります.