У меня домашнее задание по созданию нескольких номеров для отеля.Моя идея заключается в использовании jTree, чтобы я мог выбрать более одного дочернего элемента jTree.Когда мы используем jTree, мы можем выбрать более 1 опции, используя Ctrl + клик.Я начал с создания проекта в Netbeans, а затем добавил jTree из палитры.После этого я использую пользовательский код для TreeModel и добавляю такой элемент:
public void generateRoom() {
DefaultMutableTreeNode room = new DefaultMutableTreeNode("Room");
DefaultMutableTreeNode common = new DefaultMutableTreeNode("Common");
DefaultMutableTreeNode vip = new DefaultMutableTreeNode("VIP");
DefaultMutableTreeNode vvip = new DefaultMutableTreeNode("VVIP");
room.add(common);
room.add(vip);
room.add(vvip);
DefaultTreeModel model = new DefaultTreeModel(room);
jTree1.setModel(model);
}
После вызова метода в конструкторе я добавил событие MouseClick на jTree.Проблема в том, что я не могу найти, как получить несколько дочерних элементов с помощью Ctrl + клик.
Спасибо, надеюсь, кто-нибудь мне поможет.
Я пытался добавить MouseOnclick следующим образом:
private void jTree1MouseClicked(java.awt.event.MouseEvent evt) {
// TODO add your handling code here:
if (evt.getClickCount() == 1) {
System.out.println(jTree1.getSelectionModel().toString());
}
}
Да, это работало со следующим результатом на консоли: если я щелкаю только одного дочернего элемента, его результат был: javax.swing.tree.DefaultTreeSelectionModel 15980197 [[Room, Common] @ 1]
Если я использую Ctrl + клик, он показывает: javax.swing.tree.DefaultTreeSelectionModel 15980197 [[Room, Common] @ 1 [Room, VIP] @ 2]
Теперь проблема в том, как мне получить строкукак общий или VIP .. Спасибо ..