如何在JavaFX的HTMLEditor中获取节点的ID

3

我希望从HTMLEditor中删除一些控制按钮,因为我不需要它们。为此,我需要找到所需的节点。如何知道HTMLEditor内部节点的ID?请参见以下内容。谢谢!

public class myApp extends Application {

    @Override
    public void start(Stage stage) throws Exception {
        Parent root = FXMLLoader.load(getClass().getResource("myApp.fxml")); //this fxml has HTMLEditor named htmlEditor.
        Scene scene = new Scene(root);
        stage.setScene(scene);
        stage.show();

        Node someControlInsideHtmlEditor = root.lookup("#htmlEditor").lookup("#what_Is_The_ID_of_This_someControlInsideHtmlEditor")
    }
}

大家好!新年快乐!我想再次提出同样的问题,因为没有人回答。提前谢谢你。 - Vaib
2个回答

5

  • 这里下载Scenic View
  • 将其添加到应用程序的类路径中
  • 在start()方法的末尾添加以下行:

ScenicView.show(scene);

  • 运行应用程序
  • 将弹出两个窗口:带有HTMLEditor的primaryStage和Scenic View的舞台
  • 现在,您可以访问场景图的每个节点。在左侧窗格中打开树,并从HTMLEditor中选择一个节点。您可以通过它们的CSS类访问控件。

    例如,打开HTMLEditor -> ToolBar -> HBox,并选择第一个按钮。查看右侧的“节点详细信息”中的“styleClass”。您需要“html-editor-cut”。它可以与此代码一起使用:

    Button cutButton = (Button) root.lookup(".html-editor-cut");


    0

    不知道你是否还在寻找这个答案。在Java 8中,HTMLEditor只有一个子元素,即GridPane。该GridPane的前两个子元素是ToolBars,第三个是WebView。从gridpane中删除前两个子元素以进行所需的格式设置。这有帮助吗?


    我们不能通过调用“lookupall()”来访问其他子节点吗? - Joseph_Marzbani

    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接