我在JavaFX中有一个场景,其中有CustomTextField
具有自动完成功能。当用户键入弹出窗口时,会打开更多列。我在TestFX中做了一个自动场景,她在CustomTextField
输入了
有没有办法浏览弹出窗口,通过它的列?
clickOn(article2SearchTxt);
write(cfgUiTest.article2SearchVal);
push(KeyCode.ENTER);
结构是:Scene,Popup,HBox,VBox,Cells。 实际上有一个包含数据库列的弹出窗口。 Popup的内容是HBox和VBox。 (表)我想访问单元格的内容。使用" clickOn"在文本上没有工作,但如果我得到单元格的内容,我可以移动" TAB"翻过它,然后按" ENTER"
如果我对此做了一个sysout:
System.out.println(((PopupColumn) ((VBox) IntellitaxUI.getPopup().getContentHBox().getChildren().get(5)).getChildren().get(2)).getItems());
我在TextFlow中获取了单元格的内容。我可以获得它的内容吗?
selectedItem popupcontent selectedItem], TextFlow@7f3d205f[styleClass=popupcontent selectedItem], TextFlow@761997b6[styleClass=popupcontent selectedItem], TextFlow@777a8ef1[styleClass=popupcontent selectedItem], TextFlow@6a680ebb[styleClass=popupcontent selectedItem], TextFlow@50f69067[styleClass=popupcontent selectedItem],
答案 0 :(得分:0)
通过带有行/列的弹出窗口导航可以通过两种方式完成:
1)模拟向下/向上/向左/向右箭头按下:
press(KeyCode.DOWN).release(KeyCode.DOWN);
2)模拟鼠标单击或双击特定文本:
clickOn("expected text");
doubleClickOn("expected text");
<强>更新强>
根据你的println
表达式及其结果,我手工绘制了你桌子的下一个模型:
我可以看到每个单元格中的TextFlow
控件集合。这是对的吗?可能只有一个TextFlow
在单元格中?
顺便说一句,为什么不使用标准TableView
control进行数据库数据显示?