📄 tabpane1.java
字号:
package tabpanl;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
public class TabPane1 extends JFrame {
JPanel cp=new JPanel();
JTabbedPane jtp=new JTabbedPane(); //定义分页面板对象
JPanel jp1=new JPanel(); //定义面板对象,作为分页使用
JPanel jp2=new JPanel();
JPanel jp3=new JPanel();
JButton jb1=new JButton("in one"); //定义按钮in one
JButton jb2=new JButton("in two"); //定义按钮in two
public TabPane1() { //窗口tabpane1类的构造函数
setTitle("try to use JTabbedPane"); //设置窗口标题
setSize(200,300); //设置窗口大小
this.addWindowListener(new WindowAdapter() { //监听窗口的
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
cp=(JPanel)this.getContentPane(); //取得tabpane1类的容器框架
ImageIcon icon=new ImageIcon("middle.gif"); //定义图标
jp1.setLayout(new FlowLayout()); //设置面板jp1的布局
jp1.add(jb1); //在面板jp1中加入按钮in one
jp2.setLayout(new FlowLayout()); //设置面板jp2的布局
jp2.add(jb2); //在面板jp1中加入按钮in two
jtp.add(jp1,0); //在分页面板中加入面板jp1,且将其编号设为0
jtp.setTitleAt(0,"one"); //将0号分页的标签名设为one
jtp.addTab("two",icon,jp2,"hello");
//加入标签名为two、图标为icon、提示信息为hello的分页jp2
jtp.setSelectedIndex(0); //设置0号分页为当前页
jtp.addChangeListener(new ChangeListener(){ //监听分页面板jtp的ChangeEvent
public void stateChanged(ChangeEvent e) {
jtpState(e); //调用方法jtpState(ChangeEvent e),用以处理ChangeEvent
}
});
cp.add(jtp); //将分页面板加入tabpane1类的容器框架
}
public static void main(String[] args) {
TabPane1 tabpane2 = new TabPane1(); //定义类tabpane1的对象tabpane2
tabpane2.setVisible(true); //将窗口对象tabpane2设为显示
}
void jtpState (ChangeEvent e) { //处理ChangEvent事件的方法
String s=new String();
jp3=(JPanel)jtp.getSelectedComponent(); //取得被选分页
if ( jp3==jp1 ) s="one"; //若选择jp1则s取值为one
if ( jp3==jp2 ) s="two"; //若选择jp2则s取值为two
this.setTitle(s+" is selected"); //设置窗口标题
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -