繁体   English   中英

如何在Eclipse RCP应用程序中使用用户输入?

[英]How to use user input in Eclipse RCP application?

这是我正在处理的Eclipse RCP应用程序的摘录:

UML图

说明:在该方法中createContents(Composite)的类内ContainerSelectionDialog我打电话createComposite(Composite)MyComposite ,其从抽象类继承AbstractCompositeProxy

TabFolder folder = new TabFolder((Composite) dialogArea, SWT.TOP);
Composite comp = (Composite) super.createDialogArea(folder);
TabItem tab = new TabItem(folder, SWT.NONE);
tab.setText("Header");
tab.setControl(compositeProxy
        .createComposite(comp));

createComposite(Composite)内部,我正在创建SWT小部件,例如org.eclipse.swt.widgets.Textorg.eclipse.swt.widgets.Combo等。 例:

Label label = new Label(parentComposite, SWT.NONE);
label.setText("Something");

Text text = new Text(parentComposite, SWT.BORDER);
GridData gridData = new GridData();
gridData.horizontalAlignment = SWT.FILL;
gridData.grabExcessHorizontalSpace = true;
text.setLayoutData(gridData);

因此,在我的Eclipse RCP应用程序内部,用户可以打开带有定义的窗口小部件元素的对话框,并在其中输入数据。 okPressed() ,在类ContainerSelectionDialog我想通过使用MyComposite getSettings()来读取用户输入的值:

@Override
protected void okPressed() {
    List<Object> results = new ArrayList<>();
    results.add(abstractCompositeProxy.getSimulationSettings());
    setResult(results);
    super.okPressed();
}

这不是我的设计决定。 我只是想了解以下内容:如何在okPressed()使用getSettings()方法来获取值?

希望这是足够的信息,否则我将在评论中提供其他信息。 我会寻求任何帮助!

以与createContents()相同的方式从okPressed()访问compositeProxy

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM