[英]Populate a jlist from text file read through button
碼:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
JFileChooser fileChooser = new JFileChooser();
//fileChooser.setCurrentDirectory(new File(System.getProperty("user.home")));
int result = fileChooser.showOpenDialog(this);
if (result == JFileChooser.APPROVE_OPTION)
{
File selectedFile = fileChooser.getSelectedFile();
System.out.println("Selected file: " + selectedFile.getAbsolutePath());
DefaultListModel lista = new DefaultListModel();
JList jList1 = new JList();
try {
FileReader archivo = new FileReader(selectedFile.getAbsolutePath());
BufferedReader lector = new BufferedReader(archivo);
String texto = null;
while ((texto = lector.readLine()) != null) {
lista.addElement(texto);
//System.out.println("Lista:"+lista);
//System.out.println(texto);
}
jList1.setModel(lista);
System.out.println("jList1:"+jList1);
}
catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
我正在嘗試從通過Read_file按鈕讀取的文本文件中填充一個jlist
我可以正確獲取文件路徑和文件內容,這些內容已通過print語句驗證,但我的jlist仍然為空。 在設計中,我檢查了jlist的變量名,兩者均與我在代碼中使用的名稱匹配。
請就錯誤建議我。
從我看來,每當您按下按鈕時,您就會創建一個新的JList
。 您確實正確地填充了DefaultListModel
但是您分配給某個jList而不是您的UI上的jList。
只需清除界線:
JList jList1 = new JList();
然后在setModel
之后repaint
並revalidate
它的容器
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.