Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从javafx中的可编辑单元工厂获取输出_Java_Javafx - Fatal编程技术网

从javafx中的可编辑单元工厂获取输出

从javafx中的可编辑单元工厂获取输出,java,javafx,Java,Javafx,我有一个TableView,它有一个带有可编辑单元格的列:TextFieldTableCell,ChoiceBoxTableCell和CheckBoxTableCell 它们是这样制作的: usernameCol.setCellFactory(TextFieldTableCell.forTableColumn()); usernameCol.setCellValueFactory(新属性ValueFactory(“用户名”); permissionLevelCol.setCellFactory(

我有一个
TableView
,它有一个带有可编辑单元格的列:
TextFieldTableCell
ChoiceBoxTableCell
CheckBoxTableCell

它们是这样制作的:

usernameCol.setCellFactory(TextFieldTableCell.forTableColumn());
usernameCol.setCellValueFactory(新属性ValueFactory(“用户名”);
permissionLevelCol.setCellFactory(ChoiceBoxTableCell.forTableColumn(/*返回字符串[]*/usersManager.getPermissionNamesList());
permissionLevelCol.setCellValueFactory(新属性ValueFactory(“permissionLevel”));
givereturnscol.setCellFactory(CheckBoxTableCell.forTableColumn(givereturnscol));
GiveReturnsCol.setCellValueFactory(新的PropertyValueFactory(“GiveReturns”));
当用户更改这些单元格中的某些内容时,如何获得输出。我需要某种触发器和获取新值的方法。例如,每当新值发生变化时,打印新值

编辑:

我的尝试:

在User类中,我放置了构造函数调用的方法:

公共作废设置(){
username.addListener(新的ChangeListener(){
@凌驾

public void已更改(observeValue您可以使用
usernameCol.setOnEditCommit(EventHandler)
侦听表单元格发生的更改,然后可以将值传递给另一个函数,以验证或保存所需的数据,或使用
StringProperty
绑定值,并实现
onChangeListener()

在中搜索有关属性绑定的信息javafx@AhmedEmad谢谢,我知道一些关于属性的知识,但是我正在寻找的属性的名称是什么?您需要字符串属性绑定到文本的值field@AhmedEmad哦,好的。请随意。将此作为答案发布,这看起来像是我需要的代码片段是无用的,因为它们不提供足够的上下文来回答您的问题-无法绕过;-)可能是op想要验证,但这是一种推测:-)如果设置正确,几乎不需要编辑处理程序(我在这里对此表示怀疑,现在也在猜测)我不能使用onEditCommit的原因是因为CheckBoxTableCell。它不调用该方法