- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我遇到的主要问题是尝试设置 columnUUID.setCellValueFactory(
时它不会填充
new PropertyValueFactory<Person,String>("different")
);columnPlayer.setCellValueFactory(
作品。如果我将两者都设置为“player”的值,则会使用这些值填充两个表。如果我将两种方法设置为“不同”,它只会添加空白文本。在两个类中将“不同”更改为不同的值不会执行任何操作。
new PropertyValueFactory<Person,String>("player")
);
package com.sandislandserv.rourke750.Gui;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Map;
import com.sandislandserv.rourke750.BetterAssociations;
import com.sandislandserv.rourke750.database.BaseValues;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.ListView;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextArea;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.AnchorPane;
公共(public)类 GuiController {
@FXML private TextField username;
@FXML private TextField domain;
@FXML private PasswordField password;
@FXML private AnchorPane pane;
@FXML private Button login;
@FXML private TableView<Person> listofPlayers;
@FXML private Label badLogin;
@FXML private TableColumn<Person, String> columnUUID;
@FXML private TableColumn<Person, String> columnPlayer;
private ObservableList<Person> data = FXCollections.observableArrayList();
public GuiController() {
}
public AnchorPane getPane(){
return pane;
}
@FXML
public void Login(){
data.clear();
badLogin.setVisible(false);
System.out.print(username.getText());
System.out.print(password.getText());
String players = getPlayers(username.getText().toString(), password.getText().toString());
String[] player = players.split(" ");
for (int x = 0; x < player.length; x=x+2){
System.out.println(player[x] + " " + player[x+1]); // makes sure that both values are populated [for debugging]
data.add(new Person(player[x], player[x+1]));
}
columnUUID.setCellValueFactory(
new PropertyValueFactory<Person,String>("different")
);
columnPlayer.setCellValueFactory(
new PropertyValueFactory<Person,String>("player")
);
listofPlayers.getItems().setAll(data);
}
public String getPlayers(String username, String password){
StringBuilder builder = new StringBuilder();
try {
@SuppressWarnings("resource")
Socket socket = new Socket(domain.getText().toString(), 25549);
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out.println(username + " " + password);
if (input.readLine().equals("BAD")) {
badLogin.setVisible(true);
return null;
}
out.println("Get All Player Info");
String line;
while ((line = input.readLine()) != null){
if (line.equals("END")) break;
builder.append(line + " ");
}
out.println("END");
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return builder.toString();
}
}`
`包 com.sandislandserv.rourke750.Gui;
导入javafx.beans.property.SimpleStringProperty;导入 javafx.beans.property.StringProperty;
公共(public)类人{
private StringProperty different;
private StringProperty player;
public Person(String player, String playerid) {
this.player = new SimpleStringProperty(player);
different = new SimpleStringProperty(playerid);
}
public String getPlayer(){
return player.get();
}
public String getUUID(){
return different.get();
}
}
`
最佳答案
将您的 getUUID
方法重命名为 getDifferent
它应该可以工作。更好的是,提供一个返回 different
的 differentProperty
方法。
PropertyValueFactory
根据您提供的名称查找方法。更多信息在javadoc .
关于java - javafx 中 TableColumn 的 setCellValueFactory 不会为一个值输入文本,但会添加空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21962015/
String[] titles = {"System Code","Domain Name","Organizational Unit","Organization Name"}; f
我在填充 javafx tableview 时遇到问题。 我目前正在开发基于 GUI 的事件管理工具(适用于大学),但我一直在尝试填充 Tableview 列表,该列表应该位于边框 Pane 布局的中
当我在 JavaFX 中生成表格时,列太大,我想在它出现在我的应用程序上时调整它们的大小以减少它们。我读了 stackOverflow 上的那些文章,这些文章很有用,但对我没有帮助:javafx co
我有一个账单表,我想在其中列出账单上的所有产品。我保存了ProductInBill ArrayList 内的对象在账单上。 当我创建TableView时我的常用方法是创建 JavaFX 字段。在 Co
我正在尝试使用 javaFX Scene builder 获取可编辑表的值,但无法获取更新的值。 我的表有 2 列:名称列和值列。每当用户更改 value 列的值时,我想使用react。 但是当我打印
我正在使用 JavaFX 制作表格。每行都有文字。一行有一个图形,因为该单元格的文本有多种颜色。 该代码仅在特定条件为真时才适用(该部分有效): departTimeCol.setCellFactor
我有一个包含三列的表,我想确保列的总宽度等于表的宽度,因此我使用 CONSTRAINED_RESIZE_POLICY。 我希望列以我指定的宽度开始,但用户可以修改。 如果我这样做: albumTabl
我正在制作一个使用表格 View 的程序。一切都很顺利,除了由于某种原因我无法将整数值填充到表中。下面是我在主程序中的代码,当我运行程序时,字符串和 double 会填充,但整数不会。在我的 Prod
我正在为我的 TableColumns 创建一个自定义标题,它是列的标签加上一个允许用户执行搜索的 TextField。我正在像这样设置列标题: getColumns().addListener(ne
我在调整包含环绕 TableCell 项目的文本项目的 TableView 大小时遇到问题。调整大小时,隐藏值会调整大小,但可见项不会重新计算文本换行。 红色框中的推文在调整大小时被隐藏,并按预期
要点 在 JavaFX TableColumn 中,右侧有一个排序箭头。 如何设置此箭头的对齐方式? 我的用例 我问是因为我正在尝试申请 Material Design到 JavaFX 并且箭头需要在
在 OpenJFX 11.0.2 & 12.0.1 SDK (Windows 10, x64) 中复制,不能在 JavaFX 8 中复制 右键单击表列,然后尝试调整列的大小。不会显示调整大小光标,并且
这是我的问题: 为 TableColumn 的默认排序设置自定义排序算法。 背景:作为示例列,我想使用将 IPv4 地址表示为 String 的列。因此默认排序是字典顺序(1.1.1.1、1.1.1.
有没有办法阻止用户调整TableView中的任何或至少所有JavaFX TableColumn的大小,同时仍然允许调整大小策略起作用? 存在 TableColumn::setResizing,但在阻止
我正在替换表列的 javafx 上下文菜单。上下文菜单将使用户能够访问 excel,例如表格 View 的过滤。一切正常,但我现在不想在列标题上的任何鼠标单击事件上打开上下文菜单。不仅仅是标准的右键单
以下场景:下表/列中有一些行具有长字符串值。我想出了如何通过手动调用“setCellFactory”并将“text.wrappingWidthProperty()”绑定(bind)到列的宽度来解决包装
我有追随者 http://code.makery.ch/library/javafx-8-tutorial/part2/并且在 TableColumn 中有一个使用 lambdas 的代码设置值: f
有人可以解释我的代码有什么问题吗? 我想创建一个简单的 swt 表。 Eclipse 注意到 TableColumn 是未定义的: TableColumn column = new Table
private float[] cwidth = { 0.1f, 0.3f, 0.3f, 0.2f, 0.1f }; setAutoResizeMode(JTable.AUTO_RESIZE_OFF)
我正在 Gluon Scene Builder 中构建一个 TableView。我想为每列中的单元格设置不同的背景颜色。我能否仅通过 FXML 文件和 CSS 来完成此操作? 使用 CSS 样式类 .
我是一名优秀的程序员,十分优秀!