⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chooseframe.java

📁 本系统是基于CORBA实现的选课系统,具有一般选课系统的基本功能(查看学生基本信息,选课退课,查看成绩等),本系统主要是推荐给对刚进行CORBA学习的初学者来说有很大的重要性
💻 JAVA
字号:
import choose.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import org.omg.CosNaming.*;
import org.omg.CosNaming.NamingContextPackage.*;
import org.omg.CORBA.*;
import java.util.*;
import java.io.*;

class ChooseFrame extends JFrame implements ActionListener
{
	private JPanel aPanel = new JPanel();
	private JLabel alabel;
	private JComboBox aComboBox;
	private JButton aButton;
	private JButton bButton;//选
	private JButton cButton;//查看信息
	private JButton dButton;//退棵
	private JButton eButton;//检查冲突
	private JList aList;
	private JList bList;
	private DefaultListModel listModel;
	private DefaultListModel listModel1;
	private JScrollPane ascrollPane;
	private JScrollPane bscrollPane;
	private JLabel aLabel;
	private JLabel bLabel;
	private String courseid[] = new String[100];
	private String coursename[] = new String[100];
	private String xuefen[] = new String[100];
	private String classtime[] = new String[100];
	private String teachername[] = new String[100];
	private String room[] = new String[100];
	private String examtime[] = new String[100];
	private String courseinf[] = new String[100];
	Vector aVector = new Vector();
	private String stuid;
	private String   defaultargs[]={"-ORBInitialPort","900","-ORBInitialHost","192.168.108.73",};
	
	public ChooseFrame(String sid)
	{
		stuid = sid;
		setTitle("学生选课系统");
		setupGUI();
		this.getchooseinf();
	}
	
	private void setupGUI()
	{
		setSize(800,600);
		setLocation(100,50);
		Container ConTen = this.getContentPane();
		
		ConTen.add(aPanel);
		setupPanel();
	}
	
	private void setupPanel()
	{
		aPanel.setLayout(null);
		
		alabel = new JLabel("请选择");
		alabel.setSize(50,30);
		alabel.setLocation(100,30);
		aPanel.add(alabel);
		
		aComboBox = new JComboBox();
		aComboBox.setSize(140,30);
		aComboBox.setLocation(150,30);
		aComboBox.addItem("2006秋季");
		aComboBox.addItem("2007春季");
		aPanel.add(aComboBox);
		
		aButton = new JButton("提取");
		aButton.setSize(70,30);
		aButton.setLocation(300,30);
		aPanel.add(aButton);
		
		//String ab[]={"123","123"};
		listModel = new DefaultListModel();
		aList=new JList(listModel);
		aList.setSelectionForeground(Color.orange);
		ascrollPane = new JScrollPane(aList);
		ascrollPane.setSize(700,250);
		ascrollPane.setLocation(30,70);
		aPanel.add(ascrollPane);
		
		listModel1 = new DefaultListModel();
		bList = new JList(listModel1);
		bList.setSelectionForeground(Color.blue);
		bscrollPane = new JScrollPane(bList);
		bscrollPane.setSize(700,150);
		bscrollPane.setLocation(30,370);
		aPanel.add(bscrollPane);
		
		bButton = new JButton("选课");
		bButton.setSize(70,30);
		bButton.setLocation(100,330);
		aPanel.add(bButton);
		
		cButton = new JButton("查看课程信息");
		cButton.setSize(120,30);
		cButton.setLocation(200,330);
		aPanel.add(cButton);
		
		aLabel = new JLabel("总学分");
		aLabel.setSize(70,30);
		aLabel.setLocation(100,530);
		aPanel.add(aLabel);
		
		aLabel = new JLabel();
		aLabel.setSize(40,30);
		aLabel.setForeground(Color.red);
		aLabel.setLocation(155,530);
		aPanel.add(aLabel);
		
		dButton = new JButton("退课");
		dButton.setSize(70,30);
		dButton.setLocation(200,530);
		aPanel.add(dButton);
		
		eButton = new JButton("查看课程冲突");
		eButton.setSize(120,30);
		eButton.setLocation(300,530);
		aPanel.add(eButton);
		
		aButton.addActionListener(this);
		bButton.addActionListener(this);
		cButton.addActionListener(this);
		dButton.addActionListener(this);
		eButton.addActionListener(this);
	}
	
	public void actionPerformed(ActionEvent e)
	{
		//System.out.println("aaa");
		if(e.getSource()==aButton)
		{
			//System.out.println((aComboBox.getSelectedItem().toString()));
			try{
			// 创建和初始化 ORB 
			//String   defaultargs[]={"-ORBInitialPort","2089","-ORBInitialHost","192.168.0.164",};
			
			ORB orb = ORB.init(defaultargs, null);
			// 获取根命名上下文
			org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService");
			NamingContext ncRef = NamingContextHelper.narrow(objRef);
			//解析命名中的对象引用
			NameComponent nc = new NameComponent("choose","Object");
			NameComponent path[] = {nc};
			choose.xuanke ShowRef = xuankeHelper.narrow(ncRef.resolve(path));
			// 调用 Show 服务对象并打印结果
			ShowRef.getcourse("2006");
			String a = ShowRef.getcoursename();
			System.out.println(a);
			int b = ShowRef.getline();
			
			StringTokenizer aString=new StringTokenizer(a,",");	
			StringTokenizer bString=new StringTokenizer(ShowRef.getcourseid(),",");
			StringTokenizer xString=new StringTokenizer(ShowRef.getxuefen(),",");
			StringTokenizer cString=new StringTokenizer(ShowRef.getclasstime(),",");
			StringTokenizer dString=new StringTokenizer(ShowRef.getteachername(),",");
			StringTokenizer eString=new StringTokenizer(ShowRef.getroom(),",");
			StringTokenizer fString=new StringTokenizer(ShowRef.getexamtime(),",");
			StringTokenizer gString=new StringTokenizer(ShowRef.getcourseinf(),",");
			
			for(int i=0;aString.hasMoreTokens();i++)
			{
				coursename[i]=aString.nextToken();
				courseid[i]=bString.nextToken();
				xuefen[i]=xString.nextToken();
				classtime[i]=cString.nextToken();
				teachername[i]=dString.nextToken();
				room[i]=eString.nextToken();
				examtime[i]=fString.nextToken();
				
				try
				{
					courseid[i]= new String(courseid[i].getBytes("ISO-8859-1"),"GBK");
					coursename[i]=new String(coursename[i].getBytes("ISO-8859-1"),"GBK");
					listModel.addElement(courseid[i]+"   "+coursename[i]+
					                     "     "+xuefen[i]+"      "+classtime[i]+"     "+
					                     "  "+teachername[i]+"     "+room[i]+
					                     "     "+examtime[i]);
					//aList = new JList(aVector);
				
				}
				catch(UnsupportedEncodingException e1)
				{
					//default
				}
			}
			
			System.out.println(b);
		    JOptionPane.showMessageDialog(null,"成功","Warning",JOptionPane.INFORMATION_MESSAGE);
			
			
			} catch (Exception e1) {
				System.out.println("ERROR : " + e1) ;
				e1.printStackTrace(System.out);
			}
		}
		else if(e.getSource()==bButton)
		{	
			listModel1.addElement(aList.getSelectedValue());
			try{
			// 创建和初始化 ORB
			//String   defaultargs[]={"-ORBInitialPort","900","-ORBInitialHost","192.168.108.73",}; 
			//String   defaultargs[]={"-ORBInitialPort","2089","-ORBInitialHost","192.168.0.164",};
			
			ORB orb = ORB.init(defaultargs, null);
			// 获取根命名上下文
			org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService");
			NamingContext ncRef = NamingContextHelper.narrow(objRef);
			//解析命名中的对象引用
			NameComponent nc = new NameComponent("choose","Object");
			NameComponent path[] = {nc};
			choose.xuanke ShowRef = xuankeHelper.narrow(ncRef.resolve(path));
			String aget = aList.getSelectedValue().toString();
			StringTokenizer bString=new StringTokenizer(aget," \t");
			ShowRef.insertcourse(bString.nextToken(),this.stuid );
			String xf = String.valueOf(ShowRef.getxuefentotal(this.stuid));
			aLabel.setText(xf);
			System.out.println(bString.nextToken());
			} catch (Exception e1) {
				System.out.println("ERROR : " + e1) ;
				e1.printStackTrace(System.out);
			}
		}
		else if(e.getSource()==dButton)
		{
			
			try{
			// 创建和初始化 ORB
			//String   defaultargs[]={"-ORBInitialPort","900","-ORBInitialHost","192.168.108.73",}; 
			//String   defaultargs[]={"-ORBInitialPort","2089","-ORBInitialHost","192.168.0.164",};
			
			ORB orb = ORB.init(defaultargs, null);
			// 获取根命名上下文
			org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService");
			NamingContext ncRef = NamingContextHelper.narrow(objRef);
			//解析命名中的对象引用
			NameComponent nc = new NameComponent("choose","Object");
			NameComponent path[] = {nc};
			choose.xuanke ShowRef = xuankeHelper.narrow(ncRef.resolve(path));
			String aget = bList.getSelectedValue().toString();
			StringTokenizer bString=new StringTokenizer(aget," \t");
			ShowRef.deletecourse(bString.nextToken(),this.stuid );
			String xf = String.valueOf(ShowRef.getxuefentotal(this.stuid));
			aLabel.setText(xf);
			System.out.println(bString.nextToken());
			
			} catch (Exception e1) {
				System.out.println("ERROR : " + e1) ;
				e1.printStackTrace(System.out);
			}
			listModel1.removeElement(bList.getSelectedValue());
		}
		else if(e.getSource()==cButton)
		{
			JOptionPane.showMessageDialog(null,"无信息","",JOptionPane.INFORMATION_MESSAGE);
		}
		else if(e.getSource()==eButton)
		{
			JOptionPane.showMessageDialog(null,"无冲突","",JOptionPane.INFORMATION_MESSAGE);
		}
	}
	
	public void getchooseinf()
	{
		try{
			// 创建和初始化 ORB 
			//String   defaultargs[]={"-ORBInitialPort","2089","-ORBInitialHost","192.168.0.164",};
			
			ORB orb = ORB.init(defaultargs, null);
			// 获取根命名上下文
			org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService");
			NamingContext ncRef = NamingContextHelper.narrow(objRef);
			//解析命名中的对象引用
			NameComponent nc = new NameComponent("choose","Object");
			NameComponent path[] = {nc};
			choose.xuanke ShowRef = xuankeHelper.narrow(ncRef.resolve(path));
			// 调用 Show 服务对象并打印结果
			String xf = String.valueOf(ShowRef.getxuefentotal(this.stuid));
			aLabel.setText(xf);		
			ShowRef.getchooselist(this.stuid);
			String a = ShowRef.getcoursename();
			System.out.println(a);
			int b = ShowRef.getline();
			
			StringTokenizer aString=new StringTokenizer(a,",");	
			StringTokenizer bString=new StringTokenizer(ShowRef.getcourseid(),",");
			StringTokenizer xString=new StringTokenizer(ShowRef.getxuefen(),",");
			StringTokenizer cString=new StringTokenizer(ShowRef.getclasstime(),",");
			StringTokenizer dString=new StringTokenizer(ShowRef.getteachername(),",");
			StringTokenizer eString=new StringTokenizer(ShowRef.getroom(),",");
			StringTokenizer fString=new StringTokenizer(ShowRef.getexamtime(),",");
			
			for(int i=0;aString.hasMoreTokens();i++)
			{
				coursename[i]=aString.nextToken();
				courseid[i]=bString.nextToken();
				xuefen[i]=xString.nextToken();
				classtime[i]=cString.nextToken();
				teachername[i]=dString.nextToken();
				room[i]=eString.nextToken();
				examtime[i]=fString.nextToken();
				
				try
				{
					courseid[i]= new String(courseid[i].getBytes("ISO-8859-1"),"GBK");
					coursename[i]=new String(coursename[i].getBytes("ISO-8859-1"),"GBK");
					listModel1.addElement(courseid[i]+"   "+coursename[i]+
					                     "     "+xuefen[i]+"      "+classtime[i]+"     "+
					                     "  "+teachername[i]+"     "+room[i]+
					                     "     "+examtime[i]);
					//aList = new JList(aVector);
				
				}
				catch(UnsupportedEncodingException e1)
				{
					//default
				}
			}
			
			System.out.println(b);			
			
			} catch (Exception e1) {
				System.out.println("ERROR : " + e1) ;
				e1.printStackTrace(System.out);
			}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -