📄 fortunemanager.java
字号:
// You can redistribute this software and/or modify it under the terms of// the Ozone Library License version 1 published by ozone-db.org.//// Copyright (C) 1997-@year@ by Per Nyfelt. All rights reserved.//// $Id: FortuneManager.java,v 1.2 2003/11/29 16:19:28 per_nyfelt Exp $package client;import java.awt.*;import java.awt.event.*;import java.util.Properties;import java.rmi.RemoteException;import javax.naming.Context;import javax.naming.InitialContext;import javax.rmi.PortableRemoteObject;import javax.swing.*;import ejb.Greeter;import ejb.GreeterHome;/** * * <br> Date: Sep 12, 2002 * @author Per Nyfelt */public class FortuneManager extends JFrame { private JTextArea outPutArea; private JButton addFortuneButton; private JTextField addFortuneTF; private JButton showFortuneButton; private JButton showAllFortunesButton; private JButton resetFortunesButton; private Greeter greeter; public FortuneManager() { initGUI(); initServerObjects(); } private void initServerObjects() { try { Properties props = new Properties(); props.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory"); props.setProperty(Context.PROVIDER_URL, "localhost:1099"); Context ctx = new InitialContext(props); Object ref = ctx.lookup("Greeter"); GreeterHome home = (GreeterHome) PortableRemoteObject.narrow(ref, GreeterHome.class); greeter = home.create(); } catch (Exception e) { e.printStackTrace(); outPutArea.setText(e.toString()); } } private void initGUI() { this.setTitle("Fortune Manager"); Container container = this.getContentPane(); container.setLayout(new BorderLayout()); container.add(inputPanel(), BorderLayout.NORTH); container.add(outputPanel(), BorderLayout.CENTER); container.add(actionPanel(), BorderLayout.SOUTH); this.addWindowListener(new WindowCloser()); } private JPanel inputPanel() { JPanel panel = new JPanel(); panel.setLayout(new GridBagLayout()); GridBagConstraints gbc = new GridBagConstraints(); gbc.anchor = GridBagConstraints.WEST; gbc.insets = new Insets(25, 15, 5, 5); gbc.gridy = 0; panel.add(addFortuneTF = new JTextField(30), gbc); panel.add(addFortuneButton = new JButton("Add fortune"), gbc); addFortuneButton.addActionListener(new AddFortuneAction()); return panel; } private JPanel actionPanel() { JPanel panel = new JPanel(); panel.setLayout(new GridBagLayout()); GridBagConstraints gbc = new GridBagConstraints(); gbc.insets = new Insets(5, 5, 5, 5); panel.add(showFortuneButton = new JButton("Show fortune"), gbc); panel.add(showAllFortunesButton = new JButton("Show all fortunes"), gbc); panel.add(resetFortunesButton = new JButton("Reset fortunes"), gbc); showFortuneButton.addActionListener(new ShowFortuneAction()); showAllFortunesButton.addActionListener(new ShowAllFortunesAction()); resetFortunesButton.addActionListener(new ResetFortunesAction()); return panel; } private JPanel outputPanel() { JPanel panel = new JPanel(); JScrollPane scrollPane = new JScrollPane(outPutArea = new JTextArea(20, 52)); panel.add(scrollPane); return panel; } private class AddFortuneAction implements ActionListener { public void actionPerformed(ActionEvent e) { outPutArea.append("\nAdding Fortune...\n"); try { greeter.addGreeting(addFortuneTF.getText()); } catch (RemoteException e1) { e1.printStackTrace(); } } } private class ShowFortuneAction implements ActionListener { public void actionPerformed(ActionEvent e) { outPutArea.append("\n"); try { outPutArea.append(greeter.getGreeting()); } catch (RemoteException e1) { e1.printStackTrace(); } } } private class ShowAllFortunesAction implements ActionListener { public void actionPerformed(ActionEvent e) { outPutArea.append("\n"); try { outPutArea.append(greeter.getAllGreetings().toString()); } catch (RemoteException e1) { e1.printStackTrace(); } } } private class ResetFortunesAction implements ActionListener { public void actionPerformed(ActionEvent e) { try { greeter.removeAllGreetings(); outPutArea.setText(""); } catch (RemoteException e1) { e1.printStackTrace(); } } } private class WindowCloser extends WindowAdapter { public void windowClosing(WindowEvent e) { setVisible(false); dispose(); System.exit(0); } } public static void main(String[] args) { FortuneManager fortuneManager = new FortuneManager(); fortuneManager.setSize(600, 500); fortuneManager.setLocation(100, 100); fortuneManager.setVisible(true); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -