查看: 894|回復: 0

[閒聊閒語] NPC 查詢頁面

[複製鏈接]

66

主題

162

帖子

5609

金錢

火焰之影

Rank: 8Rank: 8

威望
0
精華
0
貢獻
0
鑽石
0
閱讀權限
50
積分
5771
在線時間
78 小時
相冊
0
日誌
0
好友
0
發表於 2026-2-14 18:12 | 顯示全部樓層 |閱讀模式
npcTableModel = new DefaultTableModel(new String[]{"ID", "名稱", "IMPL"}, 0) {
    public boolean isCellEditable(int r, int c) { return false; }
};
npcTable = new JTable(npcTableModel);
npcTable.setRowHeight(22);
npcTable.addMouseListener(new MouseAdapter() {
    public void mouseClicked(MouseEvent e) {
        if (e.getClickCount() == 2) selectNpc();
    }
});
DatabaseHelper.loadNpcData(npcTableModel);
p.add(new JScrollPane(npcTable), BorderLayout.CENTER);
這個代碼看起來應該會自動加載。可能問題在於:
1. DatabaseHelper 的數據庫連接有問題
2. SQL 查詢沒有返回數據
3. tabbedPane 切換的時候沒有觸發
讓我檢查一下其他面板是否也有類似的問題。我注意到在 createQuestEditPanel() 中調用了這些查詢面板,但可能 tabbedPane 切換時沒有重新加載。
我需要確保切換到 NPC 查詢分頁時能夠重新加載數據。可能的解決方案是添加一個 ChangeListener 來監聽分頁切換事件,當選中 NPC 查詢分頁時自動調用 loadNpcData() 方法。這樣可以確保每次切換到 NPC 查詢頁面都能獲取最新的 NPC 數據。
→ Read questeditor\QuestEditor.java [limit=30, offset=80]
← Edit questeditor\QuestEditor.java
tabbedPane.addTab("任務編輯", createQuestEditPanel());
tabbedPane.addTab("NPC 查詢", createNpcSearchPanel());
tabbedPane.addTab("道具查詢", createItemSearchPanel());
tabbedPane.addTab("怪物查詢", createMonsterSearchPanel());
tabbedPane.addChangeListener(e -> {
    int selectedIndex = tabbedPane.getSelectedIndex();
    if (selectedIndex == 2 && npcTableModel.getRowCount() == 0) {
        DatabaseHelper.loadNpcData(npcTableModel);
    } else if (selectedIndex == 3 && itemTableModel.getRowCount() == 0) {
        DatabaseHelper.loadItemData(itemTableModel);
    } else if (selectedIndex == 4 && monsterTableModel.getRowCount() == 0) {
        DatabaseHelper.loadMonsterData(monsterTableModel);
    }
});
loadQuests();
JPanel bottom = new JPanel(new FlowLayout(FlowLayout.RIGHT));





上一篇︰2/14 搖起來
下一篇︰原理
您需要登錄後才可以回帖 登錄 | 註冊會員

本版積分規則

天堂私服列表

45客服

Archiver| 45天堂私服論壇   分享到微博! 分享到臉書! 分享到噗浪! 分享到維特! 分享到Google+! 分享到LINE!

45天堂私服發佈站 ©    天堂私服架設教學  提供最新天堂私服最新資訊

流量最高、品質最好、服務最優、玩家首選、最新天堂私服資訊,都在45天堂私服發佈站.    免責聲明

Sitetag
line客服聯繫
掃一掃二碼
Line客服聯繫
24H專人回覆
返回頂部 返回列表