[問題] 我的程式出現這樣的錯誤訊息@@
程式的目的是為了把文字檔裡的東西讀出來放進label裡,文字檔裡就一行純文字
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at GUI.jButtonRankActionPerformed(GUI.java:624)
at GUI.access$1000(GUI.java:16)
at GUI$11.actionPerformed(GUI.java:532)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6041)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5806)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4413)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4243)
at
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
at
java.awt.LightweightDispatcher.processMouseEvent(Container.java:3986)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2440)
at java.awt.Component.dispatchEvent(Component.java:4243)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
這是出錯的main class的code部份
private void jButtonRankActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
this.setVisible(false);
jFrameRank.setSize(380, 380);
jFrameRank.setVisible(true);
no_1.setText(record.getRank(1));
score_no_1.setText(record.getRankScore(1));
no_2.setText(record.getRank(2));
score_no_2.setText(record.getRankScore(2));
no_3.setText(record.getRank(3));
score_no_3.setText(record.getRankScore(3));
no_4.setText(record.getRank(4));
score_no_4.setText(record.getRankScore(4));
no_5.setText(record.getRank(5));
score_no_5.setText(record.getRankScore(5));
}
no_1~no_5是Label,record是rank類別的物件
後面的record.getRank()的code如下(定義在Rank class內)
public String getRank(int num){
if(num == 1)
filename = "no_1";
else if(num == 2)
filename = "no_2";
else if(num == 3)
filename = "no_3";
else if(num == 4)
filename = "no_4";
else if(num == 5)
filename = "no_5";
try {
//開檔,讀取文字
FileReader fis = new FileReader("text\\" + filename + ".txt");
text = "";
for(int c = fis.read(); c != -1; c = fis.read()){
text += (char)c;
}
//關檔
fis.close();
this.rank = text;
System.out.println(text);
//回傳文字
return rank;
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
return "";
}
使用的IDE是netbeans 6.5.1
不知道是我觀念有錯還是怎樣@ @a,de了挺久的bug,但顯示出來一直是空白的
如果有人知道是怎麼一回事的話,請不吝指教
本版首PO,請鞭小力一點> <
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.113.10.125
※ 編輯: jerrychai25 來自: 59.113.10.125 (04/19 15:36)
推
04/19 15:44, , 1F
04/19 15:44, 1F
→
04/19 15:47, , 2F
04/19 15:47, 2F
→
04/19 15:49, , 3F
04/19 15:49, 3F
→
04/19 15:59, , 4F
04/19 15:59, 4F
推
04/19 16:32, , 5F
04/19 16:32, 5F
推
04/19 17:21, , 6F
04/19 17:21, 6F
→
04/19 17:23, , 7F
04/19 17:23, 7F
推
04/19 17:26, , 8F
04/19 17:26, 8F
推
04/19 19:29, , 9F
04/19 19:29, 9F
→
04/19 20:25, , 10F
04/19 20:25, 10F
推
04/20 02:10, , 11F
04/20 02:10, 11F