📄 timetable.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.util.Random;
import javax.swing.*;
import java.sql.*;
class detail
{
static int show; //show log file or not
static int mode; //whehther normal or debugging mode
static int output=1; //whether output=1 for subject name 2 for subject code
static int random=1; // random placement of period else sequecial placement
}
class backtrack
{
int internal_id=0;
int perioddd[]=new int[300];
int periodSetted[]=new int[300];
int backtrack_no;
int no_of_backtrack;
int class_id; // class id and subject_id is equal to subject[i][j];
int subject_id;
int round[]=new int[300];
int day[]=new int[300];
int period[]=new int[300];
int no_continous_period;
int position_of_lab_in_group;
backtrack()
{
backtrack_no=0;
no_of_backtrack=0;
for(int q=0;q<300;q++)
{
perioddd[q]=0;
periodSetted[q]=0;
}
for(int q=0;q<300;q++)
{
round[q]=1;
day[q]=0;
period[q]=0;
}
subject_id=0;
class_id=0;
no_continous_period=0;
position_of_lab_in_group=0;
}
}
class lab_info
{
static int parallel_possible=1;
static int no_parallel_possible=2;
static int session=1; // 0 for any session ,1 for start of session, 2 for end of session
static int labDays=1; // 0 for any day(even in same day),1 for not in same day;
static int labSessions=1;//0 for any way(consecutive or alternate session ),1 for alternate sessions,2 for consecutive sessions,
static int labSessions_prior=2; //0 for any way (computer choice,1 for morning consecutive,2 for afternoon consecutive
}
class schedule
{
int setted;
String subject_id;
String staff_id[]=new String[20];
int no_of_staff;
int round;
//int round[]=new int[10];
schedule()
{
setted=0;
subject_id="NULL";
round=1;
}
}
class time_table
{
public String class_name;
public String subject_code ;
public int round;
public int setted;
public int internal_id;
public int period[];
public int periodSetted[];
public int periodSettedDetail[][];
public int specialBit=0;
public int class_no;
public int subject_id;
public int group_id;
public int individual_id;
public int special_form;
public int reserve_form;
public int ordinary_form;
public int lab;
public int position_of_lab_in_group;
public int serialno;
public int priority;
public int no_of_staff;
public String staff_name[];
public String staff_id[];
public int no_continuous_period;
public int continuous[];
public int continuous_period;
public int no_of_period;
// public int a[][];
public int priority_set;
public int generic_priority;
public int specific_priority;
public int no_of_specific_period;
public int specific_day_selected_priority;
public String b[][];
public int specific_period_selected_priority;
// public String c[][];
public int specific_session_selected_priority;
// public String d[][];
public int specific_continuous[]=new int[50];
public int no_of_general_period;
public int general_day_selected_priority;
public String e[][];
public int general_session_selected_priority;
// public int f[][];
public int general_period_selected_priority;
// public int g[][];
public int non_attendable;
public int general_non_attendable;
public int specific_non_attendable;
public int no_of_general_non_attendable;
public int no_of_specific_non_attendable;
public int general_day_selected_non_attendable;
public String h[][];
public int general_session_selected_non_attendable;
// public int i[][];
public int general_period_selected_non_attendable;
// public int j[][];
public int specific_day_selected_non_attendable;
public String k[][];
public int specific_session_selected_non_attendable;
// public int l[][];
public int specific_period_selected_non_attendable;
// public int m[][];
time_table()
{
round=1;
periodSettedDetail=new int[100][5];
periodSetted=new int[100];
internal_id=0;
setted=0;
group_id=0;
class_no=0;
special_form=0;
reserve_form=0;
ordinary_form=0;
lab=0;
serialno=0;
priority=0;
no_of_staff=0;
staff_name=new String[20];
staff_id=new String[20];
no_continuous_period=0;
continuous=new int[20];
period=new int[100];
for(int uu=0;uu<100;uu++)
{
period[uu]=0;
periodSetted[uu]=0;
}
for(int uu=0;uu<20;uu++)
{
continuous[uu]=1;
}
continuous_period=0;
no_of_period=0;
//a=new int[50][50];
priority_set=0;
generic_priority=0;
specific_priority=0;
no_of_specific_period=0;
specific_day_selected_priority=0;
b=new String[50][5];
for( int oo=0;oo<50;oo++)
{
for( int ee=0;ee<4;ee++)
{
b[oo][ee]="NULL";
}
}
specific_period_selected_priority=0;
//c=new String[50][50];
specific_session_selected_priority=0;
//d=new String[50][50];
no_of_general_period=0;
general_day_selected_priority=0;
e=new String[50][5];
for( int oo=0;oo<50;oo++)
{
for( int ee=0;ee<4;ee++)
{
e[oo][ee]="NULL";
}
}
general_session_selected_priority=0;
//f=new int[50][50];
general_period_selected_priority=0;
//g=new int[50][50];
non_attendable=0;
general_non_attendable=0;
specific_non_attendable=0;
no_of_general_non_attendable=0;
no_of_specific_non_attendable=0;
general_day_selected_non_attendable=0;
h=new String[50][5];
for( int oo=0;oo<50;oo++)
{
for( int ee=0;ee<4;ee++)
{
h[oo][ee]="NULL";
}
}
general_session_selected_non_attendable=0;
//i=new int[50][50];
general_period_selected_non_attendable=0;
//j=new int[50][50];
specific_day_selected_non_attendable=0;
k=new String[50][5];
for( int oo=0;oo<50;oo++)
{
for( int ee=0;ee<4;ee++)
{
k[oo][ee]="NULL";
}
}
specific_session_selected_non_attendable=0;
// l=new int[50][50];
specific_period_selected_non_attendable=0;
// m=new int[50][50];
}
public void set_reserve_form(int reserve_form)
{
this.reserve_form=reserve_form;
System.out.println(this.reserve_form);
}
public int put_reserve_form()
{
return(this.reserve_form);
}
}
class class_structure
{
int class_no;
int class_name;
int a[][]=new int[50][50];
}
class staff_structure
{ public String subjectcode[]=new String[50];
public int setted;
public int validate_no_period;
public String staff_id;
public String staff_name;
public String subject_code;
public int no_of_subject_handled=0;
public int setted_no;
public String a[][]=new String[10][50];//staff id
public int b[][]=new int[10][50];
public int round;
staff_structure()
{
setted=0;
validate_no_period=0;
}
}
class subjects
{
static String subject_name[]=new String[300];
static String subject_id[]=new String[300];
static int no_of_period[]=new int[300];
static int total_subject;
}
class info
{
static String name[]=new String[300];
static int no_of_subject[]=new int[300];
static String subject_name[][]=new String[50][100];
static String subject_id[][]=new String[50][100];
static int no_of_period[][]=new int[50][100];
static int no_of_classes;
static int total_no_of_subject;
static String staffid[]=new String[300];
static int total_no_of_staff;
static String staff_name[]=new String[300];
}
class scheduler
extends Frame implements ActionListener,ItemListener
{
CardLayout cl;
Panel p1 = new Panel();
Panel p4 = new Panel();
int c=1;
int k=0;
Button b1,b2,b3,b4;
editt2 ee=new editt2(this);
editt3 ee3=new editt3(this);
options op=new options(this);
pan1 p2 = new pan1(this);
pan2 p3 = new pan2(this);
pan5 p5 = new pan5(this);
MenuBar mb;
Menu m,m1,m2,m3;
MenuItem mi1,mi2,mf1,mf2,mf3,mf4;
CheckboxMenuItem me1,me2,mg1,mg2,mg3;
scheduler()
{
super(" SCHEDULER");
//********************************************************
// setResizable(false);
mb=new MenuBar();
setMenuBar(mb);
m=new Menu("File");
mb.add(m);
mi1=new MenuItem("Save");
mi2=new MenuItem("Print");
m.add(mi1);
m.add(mi2);
mi1.addActionListener(this);
mi2.addActionListener(this);
m1=new Menu("Edit");
mb.add(m1);
me1=new CheckboxMenuItem("Form2");
me2=new CheckboxMenuItem("Form3");
//me3=new MenuItem("Form 3");
m1.add(me1);
m1.add(me2);
//m1.add(me3);
me1.addItemListener(this);
me2.addItemListener(this);
//me3.addActionListener(this);
m2=new Menu("Options");
mb.add(m2);
mf1=new MenuItem("General");
mf2=new MenuItem("Specific");
m2.add(mf1);
m2.add(mf2);
mf1.addActionListener(this);
mf2.addActionListener(this);
m3=new Menu("View");
mb.add(m3);
mg1=new CheckboxMenuItem("Form 1");
mg2=new CheckboxMenuItem("Form 2");
mg3=new CheckboxMenuItem("Form 3");
m3.add(mg1);
m3.add(mg2);
m3.add(mg3);
mg1.setState(true);
mg1.addItemListener(this);
mg2.addItemListener(this);
mg3.addItemListener(this);
/* setVisible(true);
}
public void actionPerformed(ActionEvent ae)
{
}
*/
//*********************************************************
cl = new CardLayout();
setLayout(new BorderLayout());
setSize(700,550);
/* pan1 p2 = new pan1();
pan2 p3 = new pan2();
pan5 p5 = new pan5(); */
p1.setLayout(cl);
add(p1,BorderLayout.CENTER);
b1 = new Button("NEXT");
b2 = new Button("BACK");
b3 = new Button("EDIT");
b4 = new Button("OPTION");
add(p4,BorderLayout.NORTH);
p4.setLayout(new GridLayout(1,3));
p1.add("pan3",p3);
p1.add("pan5",p5);
p1.add("pan2",p2);
setSize(800,550);
setVisible(true);
}
public void itemStateChanged(ItemEvent ie)
{
System.out.println("item");
CheckboxMenuItem cb=(CheckboxMenuItem )ie.getSource();
if(cb==mg1)
{
System.out.println("form1");
cl.show(p1,"pan3");
c=1;
mg2.setState(false);
mg3.setState(false);
}
if(cb==mg2)
{
System.out.println("form2");
cl.show(p1,"pan5");
c=2;
mg1.setState(false);
mg3.setState(false);
}
if(cb==mg3)
{
System.out.println("form3");
cl.show(p1,"pan2");
c=3;
mg1.setState(false);
mg2.setState(false);
}
if(cb==me1)
{
System.out.println("edit form2");
if(c==2)
{
System.out.println("edit2 is presses");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -