2016-11-20 9 views
0

Мне нужно обработать щелчок на вкладках в JTabbedPane. Я не использую это для изменения вкладок, и это не будет запускаться при изменении вкладок. То, что я пытаюсь сделать, это закрыть вкладку, когда она будет нажата правой кнопкой мыши. Тем не менее, я не уверен, как я могу получить доступ к вкладке, чтобы добавить на нее событие клика. Большинство вопросов, связанных с нажатием на JTabbedPanes, предлагают использовать ChangeListener, но это не сработает, так как вкладки не будут изменены при щелчке правой кнопкой мыши.Событие события JTabbedPane

Есть ли способ добавить событие click на вкладку JTabbedPane?

ответ

1

Есть ли способ добавить событие click на вкладку JTabbedPane?

Прочтите раздел из учебника Swing по телефону How to Use TabbedPanes для рабочего примера о том, как закрыть вкладку с помощью мыши.

Содержите ссылку на учебник, удобный для основы Swing.

0

Извините за поздний ответ, но я нашел, что это очень полезно для меня и за избежать лишних кликов, обнаруженных StateChanged (с этим вы можете обнаружить все, что вы хотите в «выберите вкладку»):

myJTabbedPane.addMouseListener(new MouseListener() 
{ 

    @Override 
    public void mouseClicked(MouseEvent e) { 
     // TODO Auto-generated method stub 
     System.out.println("Panel 1 click"); 
    } 

    @Override 
    public void mousePressed(MouseEvent e) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void mouseReleased(MouseEvent e) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void mouseEntered(MouseEvent e) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void mouseExited(MouseEvent e) { 
     // TODO Auto-generated method stub 

    } 

}); 

И, наконец, если вы хотите, чтобы обнаружить правую кнопку мыши на вкладке вы можете увидеть следующий учебник (поиск getModifiers() в следующей странице):

https://docs.oracle.com/javase/tutorial/uiswing/events/mouselistener.html