民谣。
我不知道如何完成这个非常简单的任务。
我需要从按钮操作JComboBox
导入的第一行(列标题?)中获取JTable
个项目名称。所有这些元素都在JFrame
。
我试过了:
private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {
Object obj = jTable1.getValueAt(jTable1.getSelectedRow(), 1);
jComboBox1.setSelectedItem(obj);
}
还有很多方法,也无法解决问题。 请帮助!
该附加部分:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
JFileChooser tableInsert = new JFileChooser(); // вроде как создает файлчузер
tableInsert.setDialogTitle("Выберите файл"); // подпись окна выбора файла
int result = tableInsert.showDialog(null, "Открыть файл"); // открывает окно браузера
if (result == JFileChooser.APPROVE_OPTION) {
String getValue = jTextField1.getText();
String path = tableInsert.getSelectedFile().getAbsolutePath();
try {
BufferedReader br = new BufferedReader(new FileReader(path));
String firstLine = br.readLine().trim();
String[] columnsName = firstLine.split(getValue);
DefaultTableModel model = (DefaultTableModel)jTable1.getModel();
model.setColumnIdentifiers(columnsName);
// взять строки из файла
Object[] tableLines = br.lines().toArray();
// взять данные из файла и настроить JTable
for (Object tableLine : tableLines) {
String line = tableLine.toString().trim();
String[] dataRow = line.split(getValue);
model.addRow(dataRow);
}
} catch (IOException ex) {
Logger.getLogger(soft.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
}
private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {
int row=jTable1.getSelectedRow();
jComboBox1.setSelectedItem(jTable1.getModel().getValueAt(row, 0).toString());
}