当前位置: 首页 > 知识库问答 >
问题:

无法将数据加载到TableView

陆弘新
2023-03-14

我无法将数据加载到表中。我有player类,其名称为lastname等。我想将namelastname插入到TextField上的表播放器中。

public class CoreAppFXMLController implements Initializable {

@FXML
private Button addBtn;
@FXML
private Button deleteBtn;
@FXML
private Tab playersTab;
@FXML
private Tab coachesTab;
@FXML
private TextField playerNameFld;
@FXML
private TextField playerLNFld;
@FXML
private TextField playerNumberFld;
@FXML
private TextField playerPointsFld;
@FXML
private ChoiceBox<String> positionCb;
@FXML
private TableColumn<Player, String> playerNameCol;
@FXML
private TableColumn<Player, String> playerLNCol;
@FXML
private TableColumn<Player, String> playerNumberCol;
@FXML
private TableColumn<Player, String> playerPointsCol;
@FXML
private TableView<Player> playerTable;

ObservableList<Player> data = FXCollections.observableArrayList();

public class Player {

    private String name;
    private String lastName;
    private String number;
    private String points;

    public Player(String name, String lastName, String number, String points) {
        this.name = name;
        this.lastName = lastName;
        this.number = number;
        this.points = points;

    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }

    public String getPoints() {
        return points;
    }

    public void setPoints(String points) {
        this.points = points;
    }

}

/**
 * Initializes the controller class.
 */
public void initialize(URL url, ResourceBundle rb) {

    positionCb.setItems(FXCollections.observableArrayList("PLAYMAKER",
            "SHOOTER", "WING", "CENTER", "CENTER-WING"));

    playerNameCol
            .setCellValueFactory(new PropertyValueFactory<Player, String>(
                    "name"));
    playerLNCol
            .setCellValueFactory(new PropertyValueFactory<Player, String>(
                    "lastName"));
    playerNumberCol
            .setCellValueFactory(new PropertyValueFactory<Player, String>(
                    "number"));
    playerPointsCol
            .setCellValueFactory(new PropertyValueFactory<Player, String>(
                    "points"));

    playerTable.setItems(data);

}

public void addBtnAction(ActionEvent event) {
    data.add(new Player(playerNameFld.getText(), playerLNFld.getText(),
            playerNumberFld.getText(), playerPointsFld.getText()));
    playerNameFld.clear();
    playerLNFld.clear();
    playerNumberFld.clear();
    playerPointsFld.clear();

}

public void deleteBtnAction(ActionEvent event) {

}

我正在执行与下面所示完全相同的操作:http://docs.oracle.com/javase/8/javafx/user-interface-tutorial/table-view.htm#cjagaaee

但我不能让它起作用。有人能帮我吗?

共有1个答案

谷梁云瀚
2023-03-14

它与示例并不完全相同,如果您使用的是Java7,那么它的工作方式可能并不完全相同。尝试将Player类设置为对成员变量使用SimpleStringProperty,然后为每个变量添加一个*property()方法来返回成员。例如:

public class Player
{
    private SimpleStringProperty name;

    public Player(String name)
    {
        this.name.set(name);
    }

    public SimpleStringProperty nameProperty() { return name; }
    public String getName() { return name.get(); }
    public void setName(String name) { this.name.set(name); }
}

试试看,以同样的方式添加其他成员。

 类似资料:
  • 其次,是否需要从Graphene DB实例访问csv导入文件,或者这是客户端关心的问题?

  • 无法通过jupyter笔记本使用pyspark将数据写入hive。 给我下面的错误 Py4JJavaError:调用o99.saveAsTable时发生错误。:org.apache.spark.sql.分析异常:java.lang.运行时异常:java.lang.运行时异常:无法实例化org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreCl

  • 问题内容: 我正在尝试通过一种称为的方法设置项目,到目前为止还可以。但是后来我从中创建了一个arrayList,但我不知何故找不到将这些信息存储到JTable中的方法。问题是我找不到设置固定行数的方法 这是我的代码: 上课开始联赛: 足球俱乐部课程: SportsClub课程(摘要): 最后是LeagueManager,它是一个接口: 有人能帮帮我吗?我已经尝试了好几天。谢谢。 问题答案: “问题

  • 我正在使用hazelcast IMap存储我的应用程序数据。 我面临着一个小问题。 问题说明:- 当我启动spring-boot应用程序时,我正在将数据库表数据加载到hazelcast中。 示例:- 但是当我获取相同的数据时,我得到的顺序不同。 那么有没有办法按照插入的顺序获取数据呢?

  • 我试图从一个名为的方法中设置项目,到目前为止还不错。但后来我从它创建了一个arrayList,不知何故,我找不到将这些信息存储到JTable中的方法。问题是我找不到设置固定行数的方法 下面是我的代码:

  • 我将一个非常简单的mysql表(2列,'key'和'label')sqooping到HDFS。当我查看数据时,这似乎很有效: java.io.ioException:ExecException:无法设置加载函数。在org.apache.pig.pigserver.getExamples(pigServer.java:1204),在org.apache.pig.tools.grunt.gruntPa