0
我是JFace中的新成員,並且正在測試其某些組件。
現在我對使用不同方法顯示模態窗口感到困惑。
比如我有一個按鈕的應用程序,並希望通過單擊此按鈕可以打開一個對話框:哪個Shell對象是構建JFace對話框的正確對象
public class TestApp extends ApplicationWindow {
protected Control createContents(Composite parent) {
Button button1 = new Button(parent, SWT.PUSH);
button1.setText("Open");
button1.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
MyDialog myDialog = new MyDialog(...);
myDialog.open();
}
});
}
}
現在它的殼牌對象我必須分配給對話框構造的問題。
對於我發現了以下方案:
new MyDialog(getShell());
new MyDialog(parent.getShell());
new MyDialog(new Shell());
但哪一個是正確的或最常見?差異在哪裏?