package cn.itcast.fruitstore1.view;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import cn.itcast.fruitstore1.tools.GUITools;
/*
* 管理窗口类
*/
@SuppressWarnings("serial")
public abstract class AbstractAdminDialog extends JDialog{
//定义界面使用到的组件作为成员变量
private JLabel tableLabel = new JLabel("成绩列表");//成绩列表标题
private JScrollPane tablePane = new JScrollPane();//滚动窗口
protected JTable table = new JTable();//歌曲列表,设置表格
private JLabel numberLabel = new JLabel("学生学号");//学生学号
private JLabel nameLabel = new JLabel("学生名字");//学生名字
private JLabel singerLabel = new JLabel("学生成绩");//学生成绩
//添加功能组件
protected JTextField addNumberText = new JTextField(6);//添加学生学号文本框
protected JTextField addNameText = new JTextField(6);//添加学生名字文本框
protected JTextField addsingerText = new JTextField(6);//添加学生成绩文本框
private JButton addBtn = new JButton("添加学生");//添加学生
//修改功能组件
protected JTextField topNumberText = new JTextField(6);//修改学生学号文本框
protected JTextField topNameText = new JTextField(6);//修改学生名字文本框
protected JTextField topsingerText = new JTextField(6);//修改学生成绩号文本框
private JButton topBtn = new JButton("修改学生");//修改学生
//删除功能组件
protected JTextField delNumberText = new JTextField(6);//学生学号文本框
private JButton delBtn =new JButton("删除学生");
//构造方法
public AbstractAdminDialog() {
this(null,true);
}
public AbstractAdminDialog(Frame owner,boolean modal) {
super(owner,modal);
this.init();//初始化操作
this.addComponent();//添加组件
this.addListener();//添加监听器
}
//初始化操作
private void init() {
this.setTitle("学籍管理系统");//标题
this.setSize(600,500);//窗体大小与位置
GUITools.cneter(this);//设置窗口在屏幕上的位置
this.setResizable(false);//窗体大小固定
}
//添加组件
private void addComponent() {
//取消布局
this.setLayout(null);
//表格标题
tableLabel.setFont(new Font("楷体",Font.PLAIN ,20));//设置表格标题字体
tableLabel.setBounds(265, 20, 100, 25);
table.setFont(new Font("宋体",Font.PLAIN,12));//设置表格字体
numberLabel.setFont(new Font("楷体",Font.CENTER_BASELINE,15));//设置学号字体
nameLabel.setFont(new Font("楷体",Font.CENTER_BASELINE,15));//设置姓名字体
singerLabel.setFont(new Font("楷体",Font.CENTER_BASELINE,15));//设置成绩字体
this.add(tableLabel);
//表格
table.getTableHeader().setReorderingAllowed(false);//列不能移动
table.getTableHeader().setResizingAllowed(false);//不可拉动表格
table.setEnabled(false);
tablePane.setBounds(50, 50, 500, 200);
tablePane.setViewportView(table);//视口装入表格________
this.add(tablePane);
//字段标题
numberLabel.setBounds(50, 250, 70, 25);
nameLabel.setBounds(150, 250, 70, 25);
singerLabel.setBounds(250, 250, 70, 25);
this.add(numberLabel);
this.add(nameLabel);
this.add(singerLabel);
//增加组件
addNumberText.setBounds(50, 280, 80, 25);
addNameText.setBounds(150, 280, 80, 25);
addsingerText.setBounds(250, 280, 80, 25);
this.add(addNumberText);
this.add(addNameText);
this.add(addsingerText);
addBtn.setBounds(460, 280, 90, 25);
addBtn.setForeground(Color.BLACK);//设置按钮颜色
this.add(addBtn);
//置顶组件
topNumberText.setBounds(50,310,80,25);
topNameText.setBounds(150,310,80,25);
topsingerText.setBounds(250,310,80,25);
this.add(topNumberText);
this.add(topNameText);
this.add(topsingerText);
topBtn.setBounds(460, 310, 90, 25);
topBtn.setForeground(Color.WHITE);//设置按钮颜色
this.add(topBtn);
//删除组件
delNumberText.setBounds(50,370,80,25);
this.add(delNumberText);//设置按钮颜色
delBtn.setBounds(460, 370, 90, 25);
delBtn.setForeground(Color.RED);
this.add(delBtn);
}
//添加监听器
private void addListener() {
//添加按钮监听
addBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
addFruitItem();
}
});
topBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
topFruitItem();
}
});
delBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
delFruitItem();
}
});
}
//查询方法
public abstract void queryFruitItem();
//添加方法
public abstract void addFruitItem();
//修改方法
public abstract void topFruitItem();
//删除方法
public abstract void delFruitItem();
}