首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >执行JTabbedPane动作

执行JTabbedPane动作
EN

Stack Overflow用户
提问于 2017-04-08 11:36:23
回答 2查看 915关注 0票数 0

当打开新的选项卡时,我正在寻找可以在使用选项卡窗格时执行操作的方法。

有点像formwindowopenned

EN

回答 2

Stack Overflow用户

发布于 2017-04-08 14:24:12

当打开新的选项卡时,我正在寻找可以在使用选项卡窗格时执行操作的方法。

我假设您的意思是当用户单击现有选项卡以切换到该选项卡时。如果是这样的话,那么您可以将一个ChangeListener添加到tabbedPane并侦听stateChanged事件。

如果您正在讨论向选项卡窗格添加一个新选项卡,那么您只需在应用程序逻辑中管理这个选项卡。

票数 2
EN

Stack Overflow用户

发布于 2017-04-08 15:49:31

选项卡上的所有操作(这将为您提供额外的操作,不仅仅是鼠标单击,例如,如果您使用选定的索引按代码更改选项卡,则将执行以下代码):

代码语言:javascript
复制
ChangeListener changeListener = new ChangeListener() {
  public void stateChanged(ChangeEvent changeEvent) {
    JTabbedPane sourceTabbedPane = (JTabbedPane) changeEvent.getSource();
    int index = sourceTabbedPane.getSelectedIndex();
    System.out.println("Tab changed to: " + sourceTabbedPane.getTitleAt(index));
  }
};
myJTabbedPanel.addChangeListener(changeListener);

仅鼠标单击选项卡上的

代码语言:javascript
复制
/** 
 * Detects clicks when user click tab inside tabbed pane 
 */ 
private void addMouseEventToPanel(){ 
  this.myJTabbedPanel.addMouseListener(new MouseListener() 
  { 

    @Override 
    public void mouseClicked(MouseEvent e) { 
      // TODO Auto-generated method stub 
      System.out.println("You clicked on tab number "+this.myJTabbedPanel.getSelectedIndex()); 
    } 

    @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 

    } 

  });
} 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43293581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档