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 + -
显示快捷键?