
import java.awt.CardLayout
import java.awt.Container
import java.awt.Font
import java.awt.event.ActionEvent
import java.awt.event.ActionListener
import javax.swing.Icon
import javax.swing.ImageIcon
import javax.swing.JButton
import javax.swing.JFrame
import javax.swing.JLabel
import javax.swing.JMenu
import javax.swing.JMenuBar
import javax.swing.JMenuItem
import javax.swing.JPanel
import javax.swing.JToolBar
import javax.swing.SwingConstants
public class MainFrame extends JFrame implements ActionListener{
InsertPanel ip = null
SelectPanel sp = null
JPanel pframe
JButton jb1,jb2,jb3
JMenuItem jm11,jm21,jm22,jm23,jm31,jm32,jm41,jm42
CardLayout clayout
public MainFrame(String s){
super(s)
JMenuBar mb = new JMenuBar()
this.setJMenuBar(mb)
JMenu m1 = new JMenu("系统")
JMenu m2 = new JMenu("基本信息")
JMenu m3 = new JMenu("成绩")
JMenu m4 = new JMenu("奖惩")
mb.add(m1)
mb.add(m2)
mb.add(m3)
mb.add(m4)
jm11 = new JMenuItem("退出系统")
jm21 = new JMenuItem("输入")
jm22 = new JMenuItem("查询")
jm23 = new JMenuItem("更改")
jm31 = new JMenuItem("输入成绩")
jm32 = new JMenuItem("查询成绩")
jm41 = new JMenuItem("奖励")
jm42 = new JMenuItem("处分")
m1.add(jm11)
m2.add(jm21)
m2.add(jm22)
m2.add(jm23)
m3.add(jm31)
m3.add(jm32)
m4.add(jm41)
m4.add(jm42)
Icon i1 = new ImageIcon()
Icon i2 = new ImageIcon()
Icon i3 = new ImageIcon()
jb1 = new JButton(i1)
jb1.setToolTipText("输入")
jb2 = new JButton(i2)
jb2.setToolTipText("查询")
jb3 = new JButton(i3)
jb3.setToolTipText("退出")
JToolBar tb = new JToolBar("系统工具")
tb.add(jb1)
tb.add(jb2)
tb.add(jb3)
add(tb,BorderLayout.NORTH)
jm11.addActionListener(this)
jm21.addActionListener(this)
jm22.addActionListener(this)
jb1.addActionListener(this)
jb2.addActionListener(this)
jb3.addActionListener(this)
clayout = new CardLayout()
pframe = new JPanel(clayout)
add(pframe)
JPanel mainp = new JPanel(new BorderLayout())
JLabel mainl = new JLabel("学生信息管理平台",SwingConstants.CENTER)
mainl.setFont(new Font("serif",Font.BOLD,30))
mainp.add(mainl)
pframe.add(mainp,"main")
clayout.show(pframe, "main")
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == jm21 || e.getSource() == jb1){
if(ip == null){
ip= new InsertPanel()
pframe.add(ip,"insert")
}
clayout.show(pframe, "insert")
this.setTitle("输入学生信息")
}
else if(e.getSource() == jm22 || e.getSource() == jb2){
if(sp == null){
sp= new SelectPanel()
pframe.add(sp,"select")
}
clayout.show(pframe, "select")
this.setTitle("查询学生信息")
}
else if(e.getSource() == jm11 || e.getSource() == jb3){
System.exit(0)
}
}
}
第二个:
import javax.swing.JFrame
public class MainTest {
public static void main(String [] args){
MainFrame f = new MainFrame("学生信息管理平台")
f.setSize(400,300)
f.setLocation(350,250)
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
f.setVisible(true)
}
}
第二个:
import java.sql.Connection
import java.sql.DriverManager
public class MySQLConnection {
static Connection getCon(){
Connection con = null
try{
Class.forName("com.mysql.jdbc.Driver")
con = DriverManager.getConnection("jdbc:mysql://localhost/test","root","123")
}
catch(Exception e){
System.out.println("建立数据库连接遇到异常!")
}
return con
}
}
第四个:
import java.awt.BorderLayout
import java.awt.GridLayout
import java.awt.event.ActionEvent
import java.awt.event.ActionListener
import javax.swing.JButton
import javax.swing.JLabel
import javax.swing.JOptionPane
import javax.swing.JPanel
import javax.swing.JTextField
import javax.swing.SwingConstants
public class SelectPanel extends JPanel implements ActionListener{
JButton jb
JTextField jt
JTextField jt1,jt2,jt3,jt4
public SelectPanel(){
JLabel jl = new JLabel("请输入学号:",SwingConstants.CENTER)
jt = new JTextField()
jb = new JButton("确定")
JPanel jp1 = new JPanel(new GridLayout(1,3))
jp1.add(jl)
jp1.add(jt)
jp1.add(jb)
JLabel j1,j2,j3,j4
j1 = new JLabel("学号:",SwingConstants.CENTER)
j2 = new JLabel("姓名:",SwingConstants.CENTER)
j3 = new JLabel("性别:",SwingConstants.CENTER)
j4 = new JLabel("年龄:",SwingConstants.CENTER)
jt1 = new JTextField(6)
jt1.setEditable(false)
jt2 = new JTextField(6)
jt2.setEditable(false)
jt3 = new JTextField(6)
jt3.setEditable(false)
jt4 = new JTextField(6)
jt4.setEditable(false)
JPanel jp2 = new JPanel(new BorderLayout())
JPanel jp3 = new JPanel(new GridLayout(4,2))
jp2.add(new JLabel(""),BorderLayout.NORTH)
jp3.add(j1)
jp3.add(jt1)
jp3.add(j2)
jp3.add(jt2)
jp3.add(j3)
jp3.add(jt3)
jp3.add(j4)
jp3.add(jt4)
jp2.add(jp3)
this.setLayout(new BorderLayout())
add(jp1,BorderLayout.NORTH)
add(jp2)
jb.addActionListener(this)
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == jb){
String stuNo = jt.getText().trim()
Student s = new Student()
boolean b = true
try{
b = s.selectByStuNo(stuNo)
}
catch(Exception ex){
System.out.println("查询学生信息遇到异常!")
}
if(b){
jt1.setText(s.getStuNo())
jt2.setText(s.getName())
jt3.setText(s.getGender())
int a = s.getAge()
Integer i = new Integer(a)
jt4.setText(i.toString())
}
else{
JOptionPane.showMessageDialog(null, "无此学生!")
}
}
}
}
#include <iostream>#include <string>
#include <fstream>
#include <ctime>
using namespace std
class student
{
private:
long int stu_num //学号,宿舍号
char stu_name[40]//姓名
char class_name[40] //班别
char house_name[20]//宿舍
public:
student()
{
stu_num=0
stu_name[0] =0
class_name[0] =0
house_name[0] =0
}
student::student(long a, char * b,char *c,char *d)
{
Setdata(a , b, c, d)
}
char * Getstuname(void) //姓名查找
{
return stu_name
}
long Getstunum(void) //学号查找
{
return stu_num
}
char * Gethousename(void) //宿舍号查找
{
return house_name
}
char * Getclassname(void) //按班级查找
{
return class_name
}
void Setdata(long a, char *b,char *c,char *d)
{
stu_num = a
strcpy(stu_name, b)
strcpy(class_name, c)
strcpy(house_name, d)
}
void Show(void)
{
cout<<"学号:"<<stu_num<<"\t"<<"姓名:"<<stu_name<<"\t"
cout<<"班级:"<<class_name<<"\t\t"<<"宿舍:"<<house_name<<"\n"
}
}
void main(void)
{
student s1
int flags=0
long stu_num//学号
char stu_name[40] //姓名
char class_name[40] //班级
char house_name[20] //宿舍
time_t t
time(&t)
ifstream file1
ofstream file3
char flag = 'y'
cout<<"---------------------------------学生成绩管理系统-------------------------------"<<endl
cout<<"\t\t\t 时间:" <<ctime(&t)
while( flag=='y' || flag=='Y')
{ //由flag控制循环
cout<<"--------------------------------------------------------------------------------\n"
cout<<"\t\t 1:注册学生!\n"
cout<<"\t\t 2:按学号查看学生信息!\n"
cout<<"\t\t 3:按宿舍号查看学生信息!\n"
cout<<"\t\t 4:按姓名查看学生信息!\n"
cout<<"\t\t 5:按班级查看学生信息!\n"
cout<<"\t\t 6:显示全部学生信息\n"
// cout<<"\t\t 7:按学号修改学生信息\n"
// cout<<"\t\t 8:按学号删除学生信息!\n"
cout<<"--------------------------------------------------------------------------------\n"
cout<<"请输入选择:"
char choice
cin>>choice
switch(choice)
{
case '1':
file3.open("c:\\stu.dat",ios::app|ios::binary)
input: flags=0
cout<<"输入学号:"
cin>>stu_num
while (stu_num<100000 || stu_num>999999)
{
cin.clear()
rewind(stdin)
cout <<"你输入的学号不正确,请输入一个六位数的学号" <<endl
cout <<"学号:"
cin >>stu_num
}
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件
while(!file1.eof())
{
int n
file1.read((char *)&s1,sizeof(student))
n=file1.gcount()
if(n==sizeof(student))
{
if(s1.Getstunum()==stu_num)
flags=1
}
}
file1.clear()
file1.close()
if (flags==1)
{
cin.clear()
cout <<"学号重复,请重输入!" <<endl
goto input
}
cout<<"输入姓名:"cin>>stu_name
cout<<"输入班级:"cin>>class_name
cout<<"输入宿舍:"cin>>house_name
s1.Setdata(stu_num,stu_name,class_name,house_name)
file3.write((char*)&s1,sizeof(s1))
file3.clear()
file3.close()
break
case '2': //按学号查找
cout<<"请输入学生的学号:"
cin>>stu_num
while (stu_num<100000 || stu_num>999999)
{
cin.clear()
rewind(stdin)
cout <<"你输入的学号不正确,请输入一个六位数的学号" <<endl
cout <<"学号:"
cin >>stu_num
}
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件
while(!file1.eof())
{
int n
file1.read((char *)&s1,sizeof(student))
n=file1.gcount()
if(n==sizeof(student))
{
if(s1.Getstunum()==stu_num)//显示学生信息
{
s1.Show()
flags=1
}
}
}
file1.clear()
file1.close()
if (flags==0)
cout <<"没有找学号为:"<<stu_num <<"的学生记录!" <<endl
flags=0
break
case '3': //按宿舍号查找
cout<<"请输入宿舍号:"
cin>>house_name
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件
while(!file1.eof())
{
int n
file1.read((char *)&s1,sizeof(student))
n=file1.gcount()
if(n==sizeof(student))
{
if(strcmp(s1.Gethousename(),house_name)==0)
{
s1.Show()
flags=1
}
}
}
file1.clear()
file1.close()
if (flags==0)
cout <<"没有找到宿舍为:"<<house_name <<"的学生记录!" <<endl
flags=0
break
case '4': //按姓名查找
cout<<"请输入学生姓名:"
cin>>stu_name
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件
while(!file1.eof())
{
int n
file1.read((char *)&s1,sizeof(student))
n=file1.gcount()
if(n==sizeof(student))
{
if(strcmp(s1. Getstuname(),stu_name)==0)
{
s1.Show()
flags=1
}
}
}
file1.clear()
file1.close()
if (flags==0)
cout <<"没有找到姓名为:"<<stu_name <<"的学生记录!" <<endl
flags=0
break
case '5': //按班级查找
cout<<"请输入班级名称:"
cin>>class_name
file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件
while(!file1.eof())
{
int n
file1.read((char *)&s1,sizeof(student))
n=file1.gcount()
if(n==sizeof(student))
{
if(strcmp(s1. Getclassname(),class_name)==0)
{
s1.Show()
flags=1
}
}
}
file1.clear()
file1.close()
if (flags==0)
cout <<"没有找到该班级为:"<<class_name <<"的学生记录!" <<endl
flags=0
break
case '6': //显示全部学生信息
file1.open("c:\\stu.dat",ios::in | ios::binary)//按读方式打开文件
while(!file1.eof())
{
int n
file1.read((char *)&s1,sizeof(student))
n=file1.gcount()
if(n==sizeof(student))
{
s1.Show()
flags=1
}
}
file1.clear()
file1.close()
if (flags==0)
cout <<"数据库没有记录!" <<endl
flags=0
break
// case '7': //修改学生信息按学号
//flags=0
//cout<<"请输入要修改学生的学号:"
//cin>>stu_num
//while (stu_num<100000 || stu_num>999999)
//{
// cin.clear()
// rewind(stdin)
// cout <<"你输入的学号不正确,请输入一个六位数的学号" <<endl
// cout <<"学号:"
// cin >>stu_num
//}
//file1.open("c:\\stu.dat",ios::in | ios::binary | ios::beg)//按读方式打开文件
//while(!file1.eof())
//{
// int n
// file1.read((char *)&s1,sizeof(student))
// n=file1.gcount()
// if(n==sizeof(student))
// {
// if(s1.Getstunum()==stu_num)
// {
// file3.open("c:\\stu.dat",ios::out|ios::binary)
// cout<<"输入姓名:"cin>>stu_name
// cout<<"输入班级:"cin>>class_name
// cout<<"输入宿舍:"cin>>house_name
// s1.Setdata(stu_num,stu_name,class_name,house_name)
// file3.write((char*)&s1,sizeof(s1))
// file3.close()
// flags=1
// }
// }
//}
//file1.clear()
//file1.close()
//if (flags==0)
//{
// cout <<"没有此学生记录,不能进行修改!" <<endl
// break
//}
//break
// case '8': //删除学生信息按学号
default: flag = 'n'
break
}
}
cout <<"谢谢您的使用!" <<endl
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)