1.设计一个简单的职工工资管理系统,语言用Java swing SQLsever。
2.必须使用类、对象、异常处理、抽象类、接口、表格组件
3.需要创建界面,具有相应的按钮功能
4.要体现出继承和派生的特征
代码太多,就只在这里展示一个登录界面代码,大家可以参考一下。
package payroll_system;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
public class Login extends chouxiang implements image{
JLabel l0,l1,l2,BK;//代表Swing中的标签组件,对象,表格组件
JTextField t1;//文本框
JPasswordField t2;//密码框
JButton b1,b2;//按钮
ButtonGroup b;//按钮组
JPanel j1,j2;//面板
String id="";
JFrame frame=new JFrame();//frame界面
public void Backgroundimage(){//重写抽象方法
((JPanel) frame.getContentPane()).setOpaque(false);
ImageIcon img = new ImageIcon("22.png"); // 添加图片
BK = new JLabel(img);
frame.getLayeredPane().add(BK, new Integer(Integer.MIN_VALUE));
BK.setBounds(0, 0, 400, 330);
}
public static void main(String[] args) {
//实例化image 命名为 testb
Login testb = new Login();
testb.Backgroundimage();
//是调用testb 中前面定义的Backgroundimage()方法
Login login=new Login();
login.face();
}
public void face() {
setBackgroudImage();//图片会根据button的大小而改变 自动拉伸填充
Backgroundimage();
l0=new JLabel("闽南师范大学");
l1=new JLabel("用户名");
t1=new JTextField(50);
l2=new JLabel("密码");
t2=new JPasswordField(50);//设置密码窗口
t2.setEchoChar('*');//使用‘*’隐藏密码
//设置位置和大小
l0.setBounds(150, 30, 400, 80);
l1.setBounds(80, 95, 60, 40);
l2.setBounds(80, 145, 60, 40);
t1.setBounds(130, 100, 150, 30);
t2.setBounds(130, 150, 150, 30);
//设置'登录'及'注册'按钮
b1=new JButton("登录");
b1.setBounds(150, 200, 90, 30);
//SetBt(b1);
ButtonListener li0=new ButtonListener(t1,t2);
//设置监听事件
b1.addActionListener(li0);
frame.setLayout(null);
frame.add(l0);
frame.add(l1);
frame.add(l2);
frame.add(t1);
frame.add(t2);
frame.add(b1);
frame.setVisible(true);//设置窗口可见
frame.setTitle("职工工资管理系统");
frame.setSize(400,330);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
frame.setResizable(false);
}
private void setBackgroudImage() {
// TODO 自动生成的方法存根
((JPanel) frame.getContentPane()).setOpaque(false);
ImageIcon img = new ImageIcon("22.png"); // 添加图片
BK = new JLabel(img);
frame.getLayeredPane().add(BK, new Integer(Integer.MIN_VALUE));
BK.setBounds(0, 0, 400, 330);
}
//创建类实现接口
public class ButtonListener implements java.awt.event.ActionListener{ //实现ActionListener 接口 implement
JTextField te1=new JTextField(); //传参
JPasswordField te2=new JPasswordField(); //一个画板对象
ButtonListener(JTextField te1,JPasswordField te2) {//重载 窗体上的账号框,密码框传到监听上来
this.te1=te1;
this.te2=te2;
}
public ButtonListener(JTextField ID) {
// TODO Auto-generated constructor stub
}
public void actionPerformed(ActionEvent ch) {
// TODO Auto-generated method stub
if(ch.getActionCommand()=="登录"){
// JOptionPane.showMessageDialog(null, "nb!");
Judge j = new Judge();
j.GuanJudge(te1,te2,frame);
}
}
}
}