travelbrokerframe.java
来自「《移动Agent技术》一书的所有章节源代码。」· Java 代码 · 共 206 行
JAVA
206 行
/* TravelBrokerFrame.java * $Id: TravelBrokerFrame.java,v 2.3 1997-11-19 19:22:41+09 ht Exp $ $Name: alpha5_1-release $ */package com.ibm.acl.kqmlsample.travel;import com.ibm.acl.kqml.*;import java.lang.*;import java.util.*;import java.awt.*;import java.awt.image.*;import java.io.*;/** * * @version $Revision: 2.3 $ $Date: 1997-11-19 19:22:41+09 $ * @author Hajime Tsuchitani */public class TravelBrokerFrame extends Frame { private static final String rcsid = "$Id: TravelBrokerFrame.java,v 2.3 1997-11-19 19:22:41+09 ht Exp $ $Name: alpha5_1-release $"; private List providerList; // List box; private Vector providerTable = new Vector(); // real provide table private Label providerListLabel; private Label titileLabel; private Panel northPanel; private Panel southPanel; private TravelBroker travelBroker; private TextArea textArea; // for system log private Menu fileMenu; private MenuItem quit; private MenuBar menuBar; private Button subscribe; private Choice category; private Choice subCategory; private GridBagLayout gridbag; private GridBagConstraints gridBC; public TravelBrokerFrame(String title, TravelBroker travelBroker) { super(title); this.travelBroker = travelBroker; // menu creation fileMenu = new Menu("File"); quit = new MenuItem("Quit"); menuBar = new MenuBar(); fileMenu.add(quit); menuBar.add(fileMenu); setMenuBar(menuBar); // syslog text area// textArea = new TextArea();// textArea.minimumSize(400, 300);// textArea.preferredSize(400, 400);// textArea.setBackground(Color.white);// textArea.setEditable(false); // service table construction providerList = new List(20, false); providerList.minimumSize(20); // 20 rows needed. providerList.preferredSize(20); //providerList.setFont(new Font("Courier", Font.PLAIN, 12)); //providerList.setFont(new Font("Courier", Font.PLAIN, 18)); providerList.setFont(new Font("Courier", Font.BOLD, 18)); providerList.setBackground(Color.white); providerListLabel = new Label("Service Provider"); //providerListLabel.setFont(new Font("Times", Font.BOLD, 16)); providerListLabel.setFont(new Font("Serif", Font.BOLD, 20));// delete = new Button("Delete Record"); titileLabel = new Label("TravelBroker"); titileLabel.setFont(new Font("Helvetica", Font.BOLD, 36)); titileLabel.setForeground(new Color(60, 170, 60)); // green northPanel = new Panel(); gridbag = new GridBagLayout(); gridBC = new GridBagConstraints(); northPanel.setLayout(gridbag); gridBC.gridwidth = GridBagConstraints.REMAINDER; gridbag.setConstraints(titileLabel, gridBC); northPanel.add(titileLabel); gridBC.gridwidth = GridBagConstraints.REMAINDER; gridBC.anchor = GridBagConstraints.WEST; gridBC.weightx = 1.0; gridBC.weighty = 1.0; gridbag.setConstraints(providerListLabel, gridBC); northPanel.add(providerListLabel);// gridBC.gridwidth = GridBagConstraints.REMAINDER;// gridBC.anchor = GridBagConstraints.EAST;// gridbag.setConstraints(delete, gridBC);// northPanel.add(delete);/* gridBC.anchor = GridBagConstraints.CENTER; gridBC.fill = GridBagConstraints.BOTH; gridbag.setConstraints(providerList, gridBC); northPanel.add(providerList);*/ northPanel.setBackground(Color.white); southPanel = new Panel(); gridbag = new GridBagLayout(); gridBC = new GridBagConstraints(); southPanel.setLayout(gridbag); subscribe = new Button("Subscribe"); gridbag.setConstraints(subscribe, gridBC); southPanel.add(subscribe); category = new Choice(); category.addItem("travel"); gridbag.setConstraints(category, gridBC); southPanel.add(category); subCategory = new Choice(); subCategory.addItem("airline"); subCategory.addItem("hotel"); subCategory.addItem("car"); gridBC.gridwidth = GridBagConstraints.REMAINDER; gridbag.setConstraints(subCategory, gridBC); southPanel.add(subCategory); southPanel.setBackground(Color.white); add("North", northPanel); add("Center", providerList); add("South", southPanel); pack(); resize(600, 400); } public void setMessage(String msg) { textArea.appendText(msg + "\n"); } public void addItem(AgentInfo providerAddress) { StringBuffer sb = new StringBuffer(" "); sb.insert(0, new String(providerAddress.getAgentName())); //sb.insert(40, new String(providerAddress.getURL())); sb.insert(15, new String(providerAddress.getURL())); providerList.addItem(sb.toString().trim()); providerTable.addElement(providerAddress); } public boolean handleEvent(Event evt) { if (evt.id == Event.WINDOW_DESTROY) { System.exit(0); } else if (evt.id == Event.ACTION_EVENT) { if (evt.target == quit) { System.exit(0); } else if (evt.target == subscribe) { String cat = category.getSelectedItem(); String scat = subCategory.getSelectedItem(); travelBroker.setSubAskallY(cat, scat); return true; } } return super.handleEvent(evt); }// for test public static void main(String[] args) { String str1 = new String("InfoAgent.TravelBroker atp://objects.yamato.ibm.com:7070"); String str2 = new String("InfoAgent.InfoServiceAgent atp://objects.yamato.ibm.com:7070"); String str3 = new String("InfoAgent.LibrarianAgent atp://pink01.yamato.ibm.com:7070"); TravelBrokerFrame frame = new TravelBrokerFrame("TravelBroker", null); frame.providerList.addItem(str1); frame.providerList.addItem(str2); frame.providerList.addItem(str3); frame.providerList.addItem(str1); frame.providerList.addItem(str2); frame.providerList.addItem(str3); frame.providerList.addItem(str1); frame.providerList.addItem(str2); frame.providerList.addItem(str3); frame.show(); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?