JAVA Swing实现窗口添加课程信息过程解析
基本思路:
先创建出一个添加课程信息的框架,随后就设置按钮的鼠标监听事件,确保单机后录入信息的合法性,以及确定合法性之后的后续操作,如保存课程信息,信息有误弹出窗口等操作。
代码
packageTest; importjavax.swing.JButton; importjava.io.*; importjavax.swing.JFrame; importjavax.swing.JLabel; importjavax.swing.JPanel; importjavax.swing.JTextField; importjava.awt.*; importjava.awt.event.ActionEvent; importjava.awt.event.ActionListener; publicclassSetClass{ Stringstr1="添加课程失败,请核对信息后添加", str2="添加成功"; JFramejf=newJFrame("新课程添加"); JPanelpanel=newJPanel(); JLabeladdclass=newJLabel("课程名称"); JTextFieldaddclasstext=newJTextField(); JLabelteacher=newJLabel("任课老师"); JTextFieldteachertext=newJTextField(); JLabelplaceclass=newJLabel("上课地点"); JTextFieldplaceclasstext=newJTextField(); JButtonregister=newJButton("添加"); publicbooleanjudgeText(Stringfilepath,Strings)//判断信息的合法性 { Stringstr=""; booleanflag=false; Filefile=newFile(filepath); try{ FileReaderreader=newFileReader(file); BufferedReaderbr=newBufferedReader(reader); while((str=br.readLine())!=null) { if(str.equals(s)) flag=true; } br.close(); reader.close(); }catch(FileNotFoundExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }catch(IOExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } returnflag; } publicvoidinputFile(Stringfilepath,JTextFieldjt)//将信息录入到文件中 { Filefile=newFile(filepath); try{ FileWriterreader=newFileWriter(file,true); BufferedWriterbw=newBufferedWriter(reader); bw.newLine(); bw.write(jt.getText()); bw.close(); }catch(IOExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } } publicvoidsetPanel(JPanelpanel)//设置面板 { panel.setLayout(null); addclass.setBounds(30,30,80,25); teacher.setBounds(30,60,80,25); placeclass.setBounds(30,90,80,25); register.setBounds(110,120,80,25); register.addActionListener(newActionListener(){//增加事件监听器 @Override publicvoidactionPerformed(ActionEventarg0){ //TODOAuto-generatedmethodstub if(!judgeText("data",addclasstext.getText())&&judgeText("data",teachertext.getText())&&judgeText("data",placeclasstext.getText().substring(0,2))) { inputFile("data",addclasstext); inputFile("Xclass",addclasstext); inputFile("Xclass",teachertext); inputFile("Xclass",placeclasstext); newMyJf(str2); } else newMyJf(str1); } }); addclasstext.setBounds(105,30,165,25); teachertext.setBounds(105,60,165,25); placeclasstext.setBounds(105,90,165,25); panel.add(addclass); panel.add(addclasstext); panel.add(teacher); panel.add(teachertext); panel.add(register); panel.add(placeclass); panel.add(placeclasstext); } SetClass(){//为JFrame窗口设置窗口参数 //TODOAuto-generatedconstructorstub jf.setSize(340,250); jf.setLocationRelativeTo(null); jf.add(panel); setPanel(panel); jf.setVisible(true); jf.setDefaultCloseOperation(3); } publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub newSetClass(); } } classMyJf//创建弹出窗口 { JFramejf1=newJFrame("提示信息"); JPaneljp1=newJPanel(); JLabeljl=newJLabel(); MyJf(Stringstr) { jl.setText(str); jf1.setSize(300,80); jf1.setVisible(true); jf1.add(jp1); jf1.setDefaultCloseOperation(2); jf1.setLocationRelativeTo(null); jp1.add(jl); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。