如何使用JavaFX场景生成器从Run()方法在TextField上设置文本?
我有一个扩展线程的控制器类 我的Run()方法就是这样如何使用JavaFX场景生成器从Run()方法在TextField上设置文本?,java,multithreading,textfield,Java,Multithreading,Textfield,我有一个扩展线程的控制器类 我的Run()方法就是这样 private int con = 1; public void Run(){ while(true){ try{ con++; print(); catch(exception e){ system.out.prinln(e); } } } 问题是,我需要一个print()方法,在文本字段上显示“con” 我有一个frmMain
private int con = 1;
public void Run(){
while(true){
try{
con++;
print();
catch(exception e){
system.out.prinln(e);
}
}
}
问题是,我需要一个print()方法,在文本字段上显示“con”
我有一个frmMain.fxml和frmMain.java类
如何在界面中单击按钮时显示我的“con”。(evt onClickedMouse)
我有这个:
private TextField tf;
private FrmMainController fr;
public void show(){
tf.setText(String.valueOf(con));
fr.setTxtThread1(tf);
}
如果有人能帮我解决这个问题,我将不胜感激。在其他线程中修改JavaFX组件可能会导致问题 尽管在run方法中,您可以使用
Platform.runLater(…)代码>
在fxml文件中为TextField
然后,您的受控类必须实现Initializable
接口,该接口有一个方法,当您的所有fxml元素都已初始化时将调用该方法
一旦发生这种情况,您可以调用Run
方法,并如上所述更新TextField
基本上,在SceneBuilder中创建一个基本布局,其中包含一个文本字段和一个具有固定id的按钮。然后在Initializable
界面方法内的按钮中添加一个actionListener
:
button.setOnAction(a->{···});
因此,您必须首先创建按钮组件。这里也有同样的问题显示.fxml文件..TextField对象在使用前必须初始化,否则为空。谢谢我的朋友。我有很多东西要学。我会尽力做到你对我说的一切。非常感谢。@Chopi我一到电脑就会添加代码,因为我大部分时间都是通过电话接听的。谢谢,对不起,我现在接听了。我在学习网络开发者,我没有时间。x@ChopiHTML、CSS3、Javascipt、Node.js、W3.css……;)