Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.Button;
- import java.awt.Color;
- import java.awt.FlowLayout;
- import java.awt.Frame;
- import java.awt.GridLayout;
- import java.awt.Panel;
- public class Student extends Frame {
- private static final long serialVersionUID = -661122977186348694L;
- Button Exit = new Button("Exit");
- Button Add = new Button("Add Student");
- Button Show = new Button("Show information about students");
- public Student() {
- setLayout(new FlowLayout());
- setBackground(Color.WHITE);
- Panel ButtonPanel = new Panel();
- ButtonPanel.setLayout(new GridLayout(3, 1));
- ButtonPanel.add(Add);
- ButtonPanel.add(Show);
- ButtonPanel.add(Exit);
- add(ButtonPanel);
- StudentEvent e = new StudentEvent();
- Add.addActionListener(e);
- Show.addActionListener(e);
- Exit.addActionListener(e);
- }
- public static void main(String[] args) {
- Student gui = new Student();
- gui.addWindowListener(new WindowClosingAdapter(true));
- gui.setSize(300, 150);
- gui.setLocation(300, 150);
- gui.setTitle("Menu");
- gui.setVisible(true);
- gui.setResizable(false);
- }
- }
- import java.awt.Button;
- import java.awt.Checkbox;
- import java.awt.CheckboxGroup;
- import java.awt.Color;
- import java.awt.Dimension;
- import java.awt.FlowLayout;
- import java.awt.Frame;
- import java.awt.GridLayout;
- import java.awt.Label;
- import java.awt.Panel;
- import java.awt.TextField;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.FileReader;
- import java.io.FileWriter;
- import java.util.ArrayList;
- public class StudentEvent implements ActionListener {
- Label Name = new Label("Name");
- Label FacNum = new Label("Faculty Number");
- Label Marks = new Label("Marks ");
- Label Gender = new Label("Gender");
- TextField NameTxt = new TextField(30);
- TextField FacNumTxt = new TextField(7);
- TextField MarksTxt1 = new TextField(10);
- TextField MarksTxt2 = new TextField(10);
- TextField MarksTxt3 = new TextField(10);
- TextField MarksTxt4 = new TextField(10);
- TextField MarksTxt5 = new TextField(10);
- TextField GenderTxt = new TextField(7);
- Button Save = new Button("Save to file");
- Button Back = new Button("Back");
- Button Next = new Button("Next");
- Button Previous = new Button("Previous");
- Button Menu = new Button("Menu");
- CheckboxGroup ChGroup = new CheckboxGroup();
- Checkbox Male = new Checkbox("Male", ChGroup, false);
- Checkbox Female = new Checkbox("Female", ChGroup, false);
- ArrayList<String> Names = new ArrayList<String>();
- ArrayList<String> FacNumbers = new ArrayList<String>();
- ArrayList<String> MarkList = new ArrayList<String>();
- ArrayList<String> Genders = new ArrayList<String>();
- int StudentsNumber = 0;
- int MarksNumber = 0;
- Frame AddInfoWND;
- Frame ShowInfoWND;
- public void actionPerformed(ActionEvent e) {
- try {
- String command = e.getActionCommand();
- switch (command) {
- case "Add Student": {
- AddInfoWND = new Frame();
- AddInfoWND.addWindowListener(new WindowClosingAdapter(false));
- AddInfoWND.setSize(600, 400);
- AddInfoWND.setVisible(true);
- AddInfoWND.setResizable(false);
- Panel layoutAdd = new Panel();
- layoutAdd.setLayout(new FlowLayout());
- Panel labelPanel = new Panel();
- labelPanel.setLayout(new GridLayout(2, 1));
- labelPanel.add(Name);
- labelPanel.add(FacNum);
- Panel textPanel = new Panel();
- textPanel.setLayout(new GridLayout(2, 1));
- textPanel.add(NameTxt);
- textPanel.add(FacNumTxt);
- Panel radioPanel = new Panel();
- radioPanel.setLayout(new GridLayout(1, 3));
- radioPanel.add(Gender);
- radioPanel.add(Male);
- radioPanel.add(Female);
- Panel MarksPanel = new Panel();
- MarksPanel.setLayout(new GridLayout(1, 5));
- MarksPanel.setPreferredSize(new Dimension(300, 30));
- MarksPanel.add(Marks);
- MarksPanel.add(MarksTxt1);
- MarksPanel.add(MarksTxt2);
- MarksPanel.add(MarksTxt3);
- MarksPanel.add(MarksTxt4);
- MarksPanel.add(MarksTxt5);
- Panel buttonPanel = new Panel();
- buttonPanel.setLayout(new GridLayout(1, 2));
- buttonPanel.add(Save);
- buttonPanel.add(Back);
- NameTxt.setEditable(true);
- FacNumTxt.setEditable(true);
- GenderTxt.setEditable(true);
- MarksTxt1.setEditable(true);
- MarksTxt2.setEditable(true);
- MarksTxt3.setEditable(true);
- MarksTxt4.setEditable(true);
- MarksTxt5.setEditable(true);
- removeDialog();
- layoutAdd.add(labelPanel);
- layoutAdd.add(textPanel);
- layoutAdd.add(MarksPanel);
- layoutAdd.add(radioPanel);
- layoutAdd.add(buttonPanel);
- AddInfoWND.add(layoutAdd);
- Save.addActionListener(this);
- Back.addActionListener(this);
- break;
- }
- case "Show information about students": {
- ShowInfoWND = new Frame();
- ShowInfoWND.setBackground(Color.WHITE);
- ShowInfoWND.addWindowListener(new WindowClosingAdapter(false));
- ShowInfoWND.setSize(600, 400);
- ShowInfoWND.setLocation(300, 150);
- ShowInfoWND.setTitle("Showing information");
- ShowInfoWND.setVisible(true);
- ShowInfoWND.setResizable(false);
- Panel layoutShow = new Panel();
- layoutShow.setLayout(new FlowLayout());
- Panel labelPanel2 = new Panel();
- labelPanel2.setLayout(new GridLayout(3, 1));
- labelPanel2.add(Name);
- labelPanel2.add(FacNum);
- labelPanel2.add(Gender);
- Panel textPanel2 = new Panel();
- textPanel2.setLayout(new GridLayout(3, 1));
- textPanel2.add(NameTxt);
- textPanel2.add(FacNumTxt);
- textPanel2.add(GenderTxt);
- Panel marksPanel2 = new Panel();
- marksPanel2.setLayout(new GridLayout(1, 6));
- marksPanel2.setPreferredSize(new Dimension(300, 30));
- marksPanel2.add(Marks);
- marksPanel2.add(MarksTxt1);
- marksPanel2.add(MarksTxt2);
- marksPanel2.add(MarksTxt3);
- marksPanel2.add(MarksTxt4);
- marksPanel2.add(MarksTxt5);
- Panel buttonPanel2 = new Panel();
- buttonPanel2.setLayout(new GridLayout(1, 3));
- buttonPanel2.add(Previous);
- buttonPanel2.add(Menu);
- buttonPanel2.add(Next);
- NameTxt.setEditable(false);
- FacNumTxt.setEditable(false);
- MarksTxt1.setEditable(false);
- MarksTxt2.setEditable(false);
- MarksTxt3.setEditable(false);
- MarksTxt4.setEditable(false);
- MarksTxt5.setEditable(false);
- GenderTxt.setEditable(false);
- layoutShow.add(labelPanel2);
- layoutShow.add(textPanel2);
- layoutShow.add(marksPanel2);
- layoutShow.add(buttonPanel2);
- ShowInfoWND.add(layoutShow);
- Previous.addActionListener(this);
- Next.addActionListener(this);
- Menu.addActionListener(this);
- BufferedReader br = new BufferedReader(new FileReader("Students.txt"));
- String row;
- Names.clear();
- FacNumbers.clear();
- Genders.clear();
- MarkList.clear();
- while ((row = br.readLine()) != null) {
- String part[] = row.split("-");
- Names.add(part[0]);
- FacNumbers.add(part[1]);
- Genders.add(part[7]);
- MarkList.add(part[2]);
- MarkList.add(part[3]);
- MarkList.add(part[4]);
- MarkList.add(part[5]);
- MarkList.add(part[6]);
- }
- NameTxt.setText(Names.get(StudentsNumber));
- FacNumTxt.setText(FacNumbers.get(StudentsNumber));
- GenderTxt.setText(Genders.get(StudentsNumber));
- MarksTxt1.setText(MarkList.get(MarksNumber));
- MarksTxt2.setText(MarkList.get(MarksNumber + 1));
- MarksTxt3.setText(MarkList.get(MarksNumber + 2));
- MarksTxt4.setText(MarkList.get(MarksNumber + 3));
- MarksTxt5.setText(MarkList.get(MarksNumber + 4));
- br.close();
- break;
- }
- case "Next": {
- if (StudentsNumber < Names.size() - 1) {
- StudentsNumber++;
- MarksNumber = MarksNumber + 5;
- NameTxt.setText(Names.get(StudentsNumber));
- FacNumTxt.setText(FacNumbers.get(StudentsNumber));
- GenderTxt.setText(Genders.get(StudentsNumber));
- MarksTxt1.setText(MarkList.get(MarksNumber));
- MarksTxt2.setText(MarkList.get(MarksNumber + 1));
- MarksTxt3.setText(MarkList.get(MarksNumber + 2));
- MarksTxt4.setText(MarkList.get(MarksNumber + 3));
- MarksTxt5.setText(MarkList.get(MarksNumber + 4));
- }
- break;
- }
- case "Previous": {
- if (StudentsNumber > 0) {
- StudentsNumber--;
- MarksNumber--;
- NameTxt.setText(Names.get(StudentsNumber));
- FacNumTxt.setText(FacNumbers.get(StudentsNumber));
- GenderTxt.setText(Genders.get(StudentsNumber));
- MarksTxt1.setText(MarkList.get(MarksNumber--));
- MarksTxt2.setText(MarkList.get(MarksNumber--));
- MarksTxt3.setText(MarkList.get(MarksNumber--));
- MarksTxt4.setText(MarkList.get(MarksNumber--));
- MarksTxt5.setText(MarkList.get(MarksNumber));
- }
- break;
- }
- case "Save to file": {
- String name = NameTxt.getText();
- String FacN = FacNumTxt.getText();
- String Mark1 = MarksTxt1.getText();
- String Mark2 = MarksTxt2.getText();
- String Mark3 = MarksTxt3.getText();
- String Mark4 = MarksTxt4.getText();
- String Mark5 = MarksTxt5.getText();
- Checkbox Gender = ChGroup.getSelectedCheckbox();
- FileWriter stream = new FileWriter("Students.txt", true);
- BufferedWriter out = new BufferedWriter(stream);
- out.write(name + "-");
- out.write(FacN + "-");
- out.write(Mark1 + "-");
- out.write(Mark2 + "-");
- out.write(Mark3 + "-");
- out.write(Mark4 + "-");
- out.write(Mark5 + "-");
- out.write(Gender.getLabel() + System.lineSeparator());
- out.close();
- removeDialog();
- break;
- }
- case "Back": {
- if (AddInfoWND != null) {
- AddInfoWND.setVisible(false);
- AddInfoWND.dispose();
- }
- break;
- }
- case "Menu": {
- if (ShowInfoWND != null) {
- ShowInfoWND.setVisible(false);
- ShowInfoWND.dispose();
- }
- break;
- }
- }
- if (e.getActionCommand().equals("Exit")) {
- System.exit(0);
- }
- } catch (Exception ex) {
- System.out.println(ex.getMessage());
- }
- }
- private void removeDialog() {
- NameTxt.setText("");
- FacNumTxt.setText("");
- MarksTxt1.setText("");
- MarksTxt2.setText("");
- MarksTxt3.setText("");
- MarksTxt4.setText("");
- MarksTxt5.setText("");
- GenderTxt.setText("");
- ChGroup.setCurrent(null);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement