2012-03-17 5 views
2

Я хотел бы сделать mouse-событие, которое позволяет мне щелкнуть правой кнопкой мыши по вкладке, чтобы ее выбрать и удалить. Как включить JOptionPane() после щелчка правой кнопкой мыши?Как JOptionPane() после правого щелчка и объекта

я не смог попробовать себя, как я понятия не имею ...

+0

Когда вы говорите «не смогли попробовать себя» ... почему? Какую IDE вы используете? – Coffee

+1

хорошо, я понятия не имею, с чего начать, поскольку я никогда не работал с mousevents, но я занят исследованием, теперь любая помощь будет оценена Я использую netbeans – donthedestroyer

ответ

0

Я полагаю, вы говорите о JTabbedPane здесь. Я не знаю, как определить правильный щелчок на вкладке, но по крайней мере я могу показать вам, как получать уведомления о щелчках мыши и изменениях вкладок.

Чтобы получать уведомления, если используется право щелкает где-то в JTabbedPane вы можете использовать:

tabbedPane.addMouseListener(new MouseAdapter() 
{ 
    @Override 
    public void mouseClicked(MouseEvent e) 
    { 
     if (e.getButton() == MouseEvent.BUTTON3) 
      JOptionPane.showMessageDialog(
       null, "Clicked with right mouse button somewhere on the tabbed pane"); 
    } 
}); 

Вы также можете получить уведомление, как только пользователь нажимает или отпускает кнопку мыши. См. API documentation for MouseListener.

Чтобы получать уведомления об изменении вкладки вы можете использовать:

tabbedPane.addChangeListener(new ChangeListener() 
{ 
    @Override 
    public void stateChanged(ChangeEvent e) 
    { 
     JOptionPane.showMessageDialog(null, "Tab changed"); 
    } 
}); 

Может быть, вы можете совместить это каким-то образом. Идея (хотя и не очень красиво) будет:

  1. Регистрации, что используется нажмет правую кнопку мыши
  2. Если stateChanged события происходит раньше (или вскоре после) отпускание кнопки мыши, показать ваш диалог сообщений ,
Смежные вопросы