FXForm2 - 查找场景元素

时间:2016-06-01 08:27:33

标签: java javafx

以下内容创建一个显示以下字段的简单窗口:

  • proxyType(Combobox:enum)
  • proxyHost(Textfield:String)
  • proxyPort(Textfield:int
  • proxyExclusions(Textfield:String)

以下Java代码显示内容:

CObject& getObject() {
    CObject localObject;
    CObject &objectRef(localObject);
    return objectRef;
}

以下是我尝试查找代理服务器类型。

public class ProxyDemo extends Application {
    private FXForm<Proxy> fxForm;
    private StackPane mainPane = new StackPane();

    static enum ProxyType {
        DIRECT, HTTP, HTTPS, FTP, SOCKS;
    }

    static class Proxy {
        private final ObjectProperty<ProxyType> proxyType = new SimpleObjectProperty<ProxyType>();
        private final StringProperty proxyHost = new SimpleStringProperty();
        private final IntegerProperty proxyPort = new SimpleIntegerProperty();
        private final StringProperty proxyExclusions = new SimpleStringProperty();

        public Proxy(ProxyType proxyType, String proxyHost, int proxyPort, String proxyExclusions) {
            this.proxyType.set(proxyType);
            this.proxyHost.set(proxyHost);
            this.proxyPort.set(proxyPort);
            this.proxyExclusions.set(proxyExclusions);
        }

        public ProxyType getProxyType() {
            return proxyType.get();
        }

        public String getProxyHost() {
            return proxyHost.get();
        }

        public int getProxyPort() {
            return proxyPort.get();
        }

        public String getProxyExclusions() {
            return proxyExclusions.get();
        }
    }

    @SuppressWarnings("unchecked")
    @Override
    public void start(Stage primaryStage) throws Exception {
        Proxy proxy = new Proxy(ProxyType.DIRECT, "", 0, "");
        fxForm = new FXFormBuilder<>().source(proxy).build();

        mainPane.getChildren().addAll(fxForm);

        Scene root = new Scene(mainPane);

        primaryStage.setTitle("Demo");
        primaryStage.setScene(root);
        primaryStage.show();
    }

    public static void main(String... args) {
        ProxyDemo.launch(args);
    }
}

我打算在代理类型为DIRECT时禁用字段,否则启用它们。

“proxyType”是一个Combobox类型吗?

FXForm2分配的这个字段的ID是什么?

FXForm2如何分配ID?

1 个答案:

答案 0 :(得分:2)

我的问题已经解决了。

1。 proxyType是一个Combobox类型吗?

不,proxyTypeChoiceBox

2. FXForm2指定的此字段的ID是什么?

#proxyType-form-editor

3. FXForm2如何分配ID?

交互式控件后缀为&#34; -form-editor&#34;。

e.g。 proxyHost的ID为#proxyHost-form-editor

相关标签的ID为#proxyHost-label

<强>参考

FXForm2 GitHub - Wiki

https://github.com/dooApp/FXForm2/wiki/Style-your-form-with-css