⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 classpanel.java

📁 培训时做的学生管理系统.基于J2SE平台开发
💻 JAVA
字号:
package cn.com.panel.classmanagerpanel;

import java.awt.Graphics;
import java.awt.GridBagLayout;
import java.awt.Image;
import java.awt.Insets;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JPanel;

import net.infonode.tabbedpanel.TabbedPanel;
import net.infonode.tabbedpanel.titledtab.TitledTabProperties;

import cn.com.action.classmanageraction.ClassInfoAction;
import cn.com.frame.Test;
import cn.com.util.GBC;

public class ClassPanel {
	JPanel panel;

	ActionListener action;

	private Test test;

	private TabbedPanel tp;

	private TitledTabProperties titledTabProperties;
	
	private ImageIcon i1 = new ImageIcon("img//banji2.png");
	private ImageIcon i2 = new ImageIcon("img//banji22.png");
	private ImageIcon i3 = new ImageIcon("img//banji11.png");
	private ImageIcon i4 = new ImageIcon("img//banji3.png");

	public ClassPanel(TitledTabProperties titledTabProperties, Test test,
			TabbedPanel tp) {
		this.titledTabProperties = titledTabProperties;
		this.test = test;
		this.tp = tp;
	}

	/**
	 * 构建panel
	 * 
	 * @return
	 */
	public JPanel buildPanel() {
		if (panel == null) {
			panel = new TJPanel();
			panel.setLayout(new GridBagLayout());
			panel.add(buildButton("课程设置",i1,i2), new GBC(0, 10, 10, 10).setInsets(30)
					.setFill(GBC.BOTH).setIpad(10, 10));
			panel.add(buildButton("课程管理",i3,i4), new GBC(50, 0, 50, 60).setInsets(
					30).setFill(GBC.BOTH).setIpad(10, 10));
		}
		return panel;
	}

	/***************************************************************************
	 * 
	 * 创建各种不同按钮的方法
	 * 
	 **************************************************************************/
	/**
	 * 构建有名字的按钮
	 * 
	 * @param name按钮名字
	 * @return
	 */
	public JButton buildButton(String name,ImageIcon i1,ImageIcon i2) {
		JButton button = new JButton(name,i1);
		button.setRolloverEnabled(true);
		button.setRolloverIcon(i2);
		action = new ClassInfoAction(this,titledTabProperties,test,tp);
		button.addActionListener(action);
		return button;
	}

	/**
	 * 创建带图标的按钮
	 * 
	 * @param name
	 * @return
	 */
	private JButton buildButton(String name, String image) {
		JButton button = new JButton(new ImageIcon(image));
		button.setName(name);
		action = new ClassInfoAction(this,titledTabProperties,test,tp);
		button.addActionListener(action);
		return button;
	}

	/**
	 * 创建鼠标点击变化图片的按钮(按钮有名字)
	 * 
	 * @param name按钮名字
	 * @param image鼠标点击前的图片
	 * @param scrimage鼠标点击后的图片
	 * @return
	 */

	private JButton buildButton(String name, String image, String scrimage) {
		JButton button = new JButton(new ImageIcon(image));
		button.setName(name);
		button.setRolloverEnabled(true);
		button.setRolloverIcon(new ImageIcon(scrimage));
		button.setMargin(new Insets(0, 0, 0, 0));
		action = new ClassInfoAction(this,titledTabProperties,test,tp);
		button.addActionListener(action);
		return button;
	}

	/**
	 * 创建没有名字的鼠标点击后图片发生变化的按钮
	 * 
	 * @param name
	 *            命令事件名
	 * @param image
	 *            鼠标点击前的图片
	 * @param scrimage鼠标点击后的图片
	 * @return
	 */
	private JButton buildButton1(String name, String image, String scrimage) {
		JButton button = new JButton(new ImageIcon(image));
		button.setActionCommand(name);
		button.setRolloverEnabled(true);
		button.setRolloverIcon(new ImageIcon(scrimage));
		button.setMargin(new Insets(0, 0, 0, 0));
		action = new ClassInfoAction(this,titledTabProperties,test,tp);
		button.addActionListener(action);
		return button;
	}

	/**
	 * 内部类,给panel添加图片背景
	 * 
	 * @author Administrator
	 * 
	 */
	class TJPanel extends JPanel {
		ImageIcon icon;

		public TJPanel() {
			icon = new ImageIcon("img//classdesk1.jpg");
			setSize(icon.getIconWidth(), icon.getIconHeight());
		}

		public void paintComponent(Graphics g) {
			super.paintComponent(g);
			Image i = icon.getImage();
			g.drawImage(i, 0, 0, this);
		}
	}
}

⌨️ 快捷键说明

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