workflow_jclosabletabbedpane.java

来自「用java实现的工作流」· Java 代码 · 共 48 行

JAVA
48
字号
package treedoc;

// 在主窗口的左边添加JGRAPH界面的类

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class workflow_JClosableTabbedPane
    extends JTabbedPane
    implements MouseListener {

  public workflow_JClosableTabbedPane() {
    super();
    addMouseListener(this);

  }

  public void addTab(String title,Component component) {
    this.addTab(title, null,  component);
  }

  public void addTab(String title, Icon extraIcon, Component component) {
    super.addTab(title, new workflow_CloseTabIcon(extraIcon), component);
  }

  public void mouseClicked(MouseEvent e) {
    int tabNumber = getUI().tabForCoordinate(this, e.getX(), e.getY());
    if (tabNumber < 0) {
      return;
    }
    Rectangle rect = ( (workflow_CloseTabIcon) getIconAt(tabNumber)).getBounds();
    if (rect.contains(e.getX(), e.getY())) {
      //the tab is being closed
      this.removeTabAt(tabNumber);
    }
  }

  public void mouseEntered(MouseEvent e) {}

  public void mouseExited(MouseEvent e) {}

  public void mousePressed(MouseEvent e) {}

  public void mouseReleased(MouseEvent e) {}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?