JAVA Swing實(shí)現(xiàn)窗口添加課程信息過(guò)程解析
基本思路:
先創(chuàng)建出一個(gè)添加課程信息的框架,隨后就設(shè)置按鈕的鼠標(biāo)監(jiān)聽(tīng)事件,確保單機(jī)后錄入信息的合法性,以及確定合法性之后的后續(xù)操作,如保存課程信息,信息有誤彈出窗口等操作。
代碼
package Test;
import javax.swing.JButton;
import java.io.*;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class SetClass {
String str1="添加課程失敗,請(qǐng)核對(duì)信息后添加",
str2="添加成功";
JFrame jf=new JFrame("新課程添加");
JPanel panel=new JPanel();
JLabel addclass=new JLabel("課程名稱");
JTextField addclasstext=new JTextField();
JLabel teacher=new JLabel("任課老師");
JTextField teachertext=new JTextField();
JLabel placeclass=new JLabel("上課地點(diǎn)");
JTextField placeclasstext=new JTextField();
JButton register=new JButton("添加");
public boolean judgeText(String filepath,String s) //判斷信息的合法性
{
String str="";
boolean flag=false;
File file=new File(filepath);
try {
FileReader reader=new FileReader(file);
BufferedReader br=new BufferedReader(reader);
while((str=br.readLine())!=null)
{
if(str.equals(s))
flag=true;
}
br.close();
reader.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return flag;
}
public void inputFile(String filepath,JTextField jt) //將信息錄入到文件中
{
File file=new File(filepath);
try {
FileWriter reader = new FileWriter(file,true);
BufferedWriter bw=new BufferedWriter(reader);
bw.newLine();
bw.write(jt.getText());
bw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void setPanel(JPanel panel) //設(shè)置面板
{
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(new ActionListener() { //增加事件監(jiān)聽(tīng)器
@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
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);
new MyJf(str2);
}
else
new MyJf(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窗口設(shè)置窗口參數(shù)
// TODO Auto-generated constructor stub
jf.setSize(340, 250);
jf.setLocationRelativeTo(null);
jf.add(panel);
setPanel(panel);
jf.setVisible(true);
jf.setDefaultCloseOperation(3);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new SetClass();
}
}
class MyJf //創(chuàng)建彈出窗口
{
JFrame jf1=new JFrame("提示信息");
JPanel jp1=new JPanel();
JLabel jl=new JLabel();
MyJf(String str)
{
jl.setText(str);
jf1.setSize(300, 80);
jf1.setVisible(true);
jf1.add(jp1);
jf1.setDefaultCloseOperation(2);
jf1.setLocationRelativeTo(null);
jp1.add(jl);
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
mybatis-puls中的resultMap數(shù)據(jù)映射
這篇文章主要介紹了mybatis-puls中的resultMap數(shù)據(jù)映射,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08
feign調(diào)用第三方接口,編碼定義GBK,響應(yīng)中文亂碼處理方式
這篇文章主要介紹了feign調(diào)用第三方接口,編碼定義GBK,響應(yīng)中文亂碼處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
SpringCloud如何利用Feign訪問(wèn)外部http請(qǐng)求
這篇文章主要介紹了SpringCloud如何利用Feign訪問(wèn)外部http請(qǐng)求,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
Java實(shí)現(xiàn)泡泡堂對(duì)戰(zhàn)版游戲的示例代碼
本文將利用Java制作經(jīng)典游戲《泡泡堂》,文中使用了MVC模式,分離了模型、視圖和控制器,使得項(xiàng)目結(jié)構(gòu)清晰易于擴(kuò)展,感興趣的可以了解一下2022-04-04
SpringCloud Gateway網(wǎng)關(guān)功能介紹與使用
SpringCloud Gateway 是 Spring Cloud 的一個(gè)全新項(xiàng)目,它旨在為微服務(wù)架構(gòu)提供一種簡(jiǎn)單有效的統(tǒng)一的 API 路由管理方式。這篇文章主要介紹了SpringCloud Gateway網(wǎng)關(guān)作用,需要的朋友可以參考下2022-12-12

