Я хочу вставить массив в табличное представление. Я пробовал и искал несколько раз, но не могу решить.
Когда я нажимаю кнопку поиска, я хочу конвертировать сообщения с сервера в массив, используя split, и помещать каждый массив в каждую строку. представления таблицы.
public void RPserch(ActionEvent event) throws IOException {
ObservableList<Person> data;
TableColumn remark = new TableColumn("Check");
remark.setMinWidth(40);
TableColumn Purchplan = new TableColumn("PurchplanID");
Purchplan.setMinWidth(100);
TableColumn Producplan = new TableColumn("Producplan");
Producplan.setMinWidth(150);
TableColumn RPID = new TableColumn("RPID");
RPID.setMinWidth(110);
TableColumn itemname = new TableColumn("itemname");
itemname.setMinWidth(100);
TableColumn RPamount = new TableColumn("RPamount");
RPamount.setMinWidth(100);
TableColumn RPdate = new TableColumn("RPdate");
RPdate.setMinWidth(200);
TableColumn RPlocation = new TableColumn("RPlocation");
RPlocation.setMinWidth(100);
TableColumn RPperson = new TableColumn("RPperson");
RPperson.setMinWidth(100);
TableColumn buyer = new TableColumn("buyer ");
buyer.setMinWidth(100);
TableColumn condition = new TableColumn("condition");
condition.setMinWidth(100);
RPTableview.getColumns().addAll(remark, Purchplan, Producplan, RPID, itemname, RPamount, RPdate, RPlocation,RPperson, buyer, condition);
Purchplan.setCellValueFactory(new PropertyValueFactory<Person, String>("PurchplanID"));
Producplan.setCellValueFactory(new PropertyValueFactory<Person, String>("Producplan"));
RPID.setCellValueFactory(new PropertyValueFactory<Person, String>("RPID"));
itemname.setCellValueFactory(new PropertyValueFactory<Person, String>("itemname"));
RPamount.setCellValueFactory(new PropertyValueFactory<Person, String>("RPamount"));
RPdate.setCellValueFactory(new PropertyValueFactory<Person, String>("RPdate"));
RPlocation.setCellValueFactory(new PropertyValueFactory<Person, String>("RPlocation"));
RPperson.setCellValueFactory(new PropertyValueFactory<Person, String>("RPperson"));
buyer.setCellValueFactory(new PropertyValueFactory<Person, String>("buyer"));
condition.setCellValueFactory(new PropertyValueFactory<Person, String>("condition"));
Это настройка столбца таблицы.
Код, который запускается при нажатии кнопки снизу. Расположение хорошо разделено, но расположение не похоже на go на строку представления таблицы.
String RPserchf = RPserchfield.getText();
try {
String search = RPserchf + "|" + "1|||";
search = search.trim();
System.out.println(search);
os = cltSocket.getOutputStream();
os.write(search.getBytes());
} catch (Exception e) {
e.printStackTrace();
}
try {
in = cltSocket.getInputStream();
String strRcvMsg = "";
byteBuff = new byte[1024];
int nRcvLen = in.read(byteBuff);
strRcvMsg = new String(byteBuff, 0, nRcvLen, "EUC-KR");
Thread.sleep(500);
System.out.println(strRcvMsg);
String[] testmsg = strRcvMsg.split("&");
TableView<Person> RPTableview = new TableView<Person>();
data = FXCollections.observableArrayList(new Person("", testmsg[0], testmsg[1], testmsg[2], testmsg[3],testmsg[4], testmsg[5], testmsg[6], testmsg[7], testmsg[8], testmsg[9]));
for (int i = 0; i < testmsg.length - 1; i++) {
System.out.println(testmsg[i]);
}
RPTableview.setItems(data);
} catch (Exception e) {
System.out.println("[EXP] Tableview " + e.getLocalizedMessage());
}
}