如何在无限次或动态地单击按钮时添加新的button
?或者简单地说,如何执行添加更多按钮的功能?
我在Javafx中尝试过,但它只是在列表中添加了两个按钮。
@FXML
void addMoreButton(ActionEvent event) {
b[count]=new Button("+");
b[count].setOnMouseClicked(event2 -> {
count++;
b[count]=new Button("+");
list.setAll(b[count]);
vboxTest.getChildren().addAll(list);
});
list.add(b[count]);
vboxTest.getChildren().addAll(list);
}
但我必须动态添加,直到用户想要添加/按下上一个按钮
只有最后一个添加的按钮才能调用下一个按钮(即第二个按钮调用第三个按钮,第三个按钮调用第四个按钮,以此类推)...
假设您使用onaction
事件处理程序的方法从一个按钮开始,您需要做两件事来正确更新场景:
您可以通过访问事件的源来执行此操作:
@FXML
void addMoreButton(ActionEvent event) {
Button source = (Button) event.getSource();
source.setOnAction(null); // remove event handler
Button newButton = new Button("+");
newButton.setOnAction(this::addMoreButton);
vboxTest.getChildren().add(newButton);
}
注意:我故意省略了列表/数组,因为数组限制元素的数量(ArrayIndexOutOfBoundsException
),并且如果子列表中已经包含Null
/A值,则会导致异常,除非您将数组大小设置为1,这样可以执行一次调用。当然,如果其他代码要求您这样做,您可以将这些button
保存在列表中。
不确定移除事件处理程序是否是所需的结果。还可以执行不同的操作,例如在单击按钮后插入新按钮:
@FXML
void addMoreButton(ActionEvent event) {
Node source = (Node) event.getSource();
Button newButton = new Button("+");
newButton.setOnAction(this::addMoreButton);
vboxTest.getChildren().add(vboxTest.getChildren().indexOf(source) + 1, newButton);
}
我是使用Appium进行C#测试的新手。我能够设置一切并运行测试。我使用UiAutomatorViewer访问了一些按钮,现在我需要单击一个按钮,但我只是得到了cont-desc。哪一个FindElement(ByAndroiduiAutomator.“”)是否链接到Cont-Desc?我什么都试过了,但总是出错。我已经尝试使用TouchAction或Mouse.Click()单击此按钮;但没有任
为了保持一致,我将列出它们: > 在活动中拥有类的成员,并将其分配给将在活动方法中处理逻辑的实例。 在'on Create'活动方法中创建'on ClickListener',并使用setOnClickListener将其分配给按钮 附言。我试着用谷歌搜索这个主题,但我找到的唯一的东西是描述“如何”做到这一点,而不是为什么它是好是坏。
以上代码来自一个网站,但我无法点击此按钮,尽管尝试了多次。我将selenium与C#结合使用来进行自动化测试。这个按钮的作用是提交表单。
问题内容: 我创建了一个名为functioncalling.php的页面,其中包含两个按钮 Submit 和 Insert 。作为PHP的初学者,我想测试单击按钮时执行的功能。我希望输出出现在同一页面上。因此,我创建了两个功能,每个按钮一个。functioncalling.php的源代码如下: 这里的问题是单击任何按钮后都没有输出。 我到底哪里出问题了? 问题答案: 是的,您在这里需要Ajax。请
我就是不能点击按钮进入下一页。目前为止我尝试了以下方法 编辑 关键是重新定位元素,重新加载。由于我在表单中单击,底层代码发生了变化。司机。通过xpath(//button[@type='submit'][@name='button'])查找元素。因此,click()无法找到元素。重新加载驱动程序后。get(“%s/%s:%s”%(str(sys.argv[4])、str(sys.argv[2])、
问题内容: 我的手势有点麻烦。 我正在尝试在同一个按钮上同时使用水龙头和长按,所以我已经使用了 和 但是当我点击时,我的按钮似乎对这两种功能都有反应。可能是什么问题? 问题答案: 很难说什么与您的代码不兼容,仅提供了两行,但是我建议您以这种方式进行: 为按钮创建插座 然后将手势添加到按钮中 然后创建动作来处理水龙头 Swift 3.0版本: Swift 5.x的更新语法: