package ntu.edu.main; import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridLayout; import ntu.edu.main.lane.event.*; import ntu.edu.main.lane.LanEngine; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JButton; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.JToolBar; import javax.swing.JList; /** * LAN ENGINE <code>MainWindow</code> * <p> * 机能名:主画面入口类 * <p> * 作成者:2010/04/23 (C)Copyright ThinkinGall * <p> * ----------变更履历(Date--Name--Content)----------<br/> * 2010/04/23--ThinkinGall--## */ public class MainWindow extends JFrame { private JPanel panelMsg; private JPanel panelUser; private JList listUser; private JToolBar toolBar; // Tool bar private JTextArea tbxChatContent; // Message show area private JTextField tbxInputContent; // Message input area private JButton btnSend; // Message Send button private JButton btnCmdOne; // Tool bar's command1 private JButton btnCmdTwo; // Tool bar's command2 private LanEngine lanE = null; // GetIp Listener /** * Launch the application. * @param args */ public static void main(String[] args) { try { MainWindow window = new MainWindow(); window.createContents(); window.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } /** * 初始化构造器 */ public MainWindow() { lanE = new LanEngine(); lanE.initial(); lanE.addLanEListener(new LanEAdapter(){ // 登录上线 public void laneEntry(LanEEvent laneE) { processEvent(laneE); } // 更新用户列表 public void laneUpdateList(LanEEvent laneE) { processEvent(laneE); } // 接收消息 public void laneReceiveMsg(LanEEvent laneE) { processEvent(laneE); } }); lanE.entry(); } /** * 处理各种事件 */ public void processEvent(LanEEvent laneE){ switch(laneE.getEventId()){ case LanEEvent.LANE_EVENT_ENTRY: System.out.println("LANE_EVENT_ENTRY"); break; case LanEEvent.LANE_EVENT_UPDATELIST: System.out.println("LANE_EVENT_UPDATELIST"); break; case LanEEvent.LANE_EVENT_RECEIVEMSG: System.out.println("LANE_EVENT_RECEIVEMSG"); break; } } /* -----Create contents of the window ----*/ /** * Create contents of the window. */ protected void createContents() { this.setSize(600, 450); this.setTitle("Lan Engine"); this.setLayout(null); listUser = new JList(); listUser.setBounds(0, 0, 150, 300); tbxChatContent = new JTextArea(); tbxChatContent.setBounds(10, 47, 416, 263); tbxInputContent = new JTextField(); tbxInputContent.setBounds(10, 351, 416, 51); toolBar = new JToolBar(); toolBar.setBounds(0, 0, 400, 30); panelMsg = new JPanel(new BorderLayout()); panelMsg.setLocation(0, 30); panelMsg.setSize(400, 300); panelMsg.setBackground(Color.CYAN); panelUser = new JPanel(new GridLayout(1, 0, 0, 0)); panelUser.setLocation(420, 10); panelUser.setSize(165, 300); panelUser.setBackground(Color.BLACK); panelMsg.add(tbxChatContent); panelMsg.add(tbxInputContent); panelUser.add(listUser); this.add(toolBar); this.add(panelMsg); this.add(panelUser); /* List listUserInfo = new List(shlLanEngine, SWT.BORDER | SWT.V_SCROLL); listUserInfo.setLocation(432, 10); listUserInfo.setSize(150, 300); // chat content tbxChatContent = new Text(shlLanEngine, SWT.BORDER | SWT.WRAP | SWT.V_SCROLL); tbxChatContent.setBounds(10, 47, 416, 263); // input content tbxInputContent = new Text(shlLanEngine, SWT.BORDER | SWT.WRAP | SWT.V_SCROLL); tbxInputContent.setBounds(10, 351, 416, 51); // tool bar toolBar = new ToolBar(shlLanEngine, SWT.FLAT | SWT.RIGHT); toolBar.setBounds(10, 10, 416, 25); // tool bar's command1 btnCmdOne = new Button(toolBar, SWT.NONE); btnCmdOne.setBounds(0, 2, 50, 22); btnCmdOne.setText("CMD_1"); btnCmdOne.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { } }); // tool bar's command2 btnCmdTwo = new Button(toolBar, SWT.NONE); btnCmdTwo.setBounds(52, 2, 50, 22); btnCmdTwo.setText("CMD_2"); btnCmdTwo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { } }); // send button btnSend = new Button(shlLanEngine, SWT.NONE); btnSend.setBounds(432, 351, 72, 22); btnSend.setText("Send"); btnSend.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { System.out.print("aa"); } });*/ // TODO } }