mainframe.java

来自「java网络高级编程的配套源码,java网络高级编程为清华出版社出版.」· Java 代码 · 共 190 行

JAVA
190
字号
/*源程序清单12-10*/

package print;

import java.awt.*;
import java.awt.event.*;
import borland.jbcl.layout.*;
import borland.jbcl.control.*;

public class MainFrame extends DecoratedFrame
{
  DrawPanel panel1 = new DrawPanel(this);
  MenuBar menuBar1 = new MenuBar();
  Menu menu1 = new Menu();
  MenuItem menuItem1 = new MenuItem();
  MenuItem menuItem2 = new MenuItem();
  MenuItem menuItem3 = new MenuItem();
  Menu menu2 = new Menu();
  MenuItem menuItem4 = new MenuItem();
  MenuItem menuItem5 = new MenuItem();
  StatusBar statusBar1 = new StatusBar();
  StatusBar statusBar2 = new StatusBar();
  PaneLayout paneLayout1 = new PaneLayout();
  int drawStyle=0;

  public MainFrame()
  {
    try
    {
      jbInit();
    }
    catch (Exception e)
    {
      e.printStackTrace();
    }
  }

  private void jbInit() throws Exception
  {
    this.setTitle("打印示例");
    menu1.setLabel("画图");
    menuItem1.setLabel("直线");
    menuItem1.addActionListener(new MainFrame_menuItem1_actionAdapter(this));
    menuItem2.setLabel("矩形");
    menuItem2.addActionListener(new MainFrame_menuItem2_actionAdapter(this));
    menuItem3.setLabel("圆");
    menuItem3.addActionListener(new MainFrame_menuItem3_actionAdapter(this));
    menuItem4.setLabel("打印");
    menuItem5.setLabel("退出");
    statusBar1.setBevelOuter(BevelPanel.LOWERED);
    statusBar2.setBevelOuter(BevelPanel.LOWERED);
    statusBar2.setBevelInner(BevelPanel.LOWERED);
    menuItem5.addActionListener(new MainFrame_menuItem5_actionAdapter(this));
    menuItem4.addActionListener(new MainFrame_menuItem4_actionAdapter(this));
    this.setLayout(paneLayout1);
    menuBar1.add(menu1);
    menuBar1.add(menu2);
    menu1.add(menuItem1);
    menu1.add(menuItem2);
    menu1.add(menuItem3);
    menu1.addSeparator();
    menu1.add(menuItem4);
    menu1.addSeparator();
    menu1.add(menuItem5);
    this.add(statusBar1, new PaneConstraints("statusBar1", "statusBar1", PaneConstraints.ROOT, 1.0f));
    this.add(panel1, new PaneConstraints("panel1", "statusBar1", PaneConstraints.TOP, 0.9166667f));
    this.add(statusBar2, new PaneConstraints("statusBar2", "statusBar1", PaneConstraints.RIGHT, 0.4868421f));
    this.setMenuBar(menuBar1);
    statusBar1.setText("直线");
  }

  public static void main(String[] args)
  {
    MainFrame frame=new MainFrame();
    frame.setLocation(100,100);
    frame.setSize(400,300);
    frame.show();
  }

  void menuItem1_actionPerformed(ActionEvent e)
  {
     drawStyle=0;
     statusBar1.setText("直线");
  }

  void menuItem2_actionPerformed(ActionEvent e)
  {
     drawStyle=1;
     statusBar1.setText("矩形");
  }

  void menuItem3_actionPerformed(ActionEvent e)
  {
     drawStyle=2;
     statusBar1.setText("圆");
  }

  void menuItem4_actionPerformed(ActionEvent e)
  {
    Toolkit tk=Toolkit.getDefaultToolkit();
    PrintJob job=tk.getPrintJob(this,"title",null);
    Graphics g=job.getGraphics();
    panel1.printAll(g);
    g.dispose();
    job.end();
  }

  void menuItem5_actionPerformed(ActionEvent e)
  {
     System.exit(0);
  }
}

class MainFrame_menuItem1_actionAdapter implements java.awt.event.ActionListener
{
  MainFrame adaptee;

  MainFrame_menuItem1_actionAdapter(MainFrame adaptee)
  {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e)
  {
    adaptee.menuItem1_actionPerformed(e);
  }
}

class MainFrame_menuItem2_actionAdapter implements java.awt.event.ActionListener
{
  MainFrame adaptee;

  MainFrame_menuItem2_actionAdapter(MainFrame adaptee)
  {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e)
  {
    adaptee.menuItem2_actionPerformed(e);
  }
}

class MainFrame_menuItem3_actionAdapter implements java.awt.event.ActionListener
{
  MainFrame adaptee;

  MainFrame_menuItem3_actionAdapter(MainFrame adaptee)
  {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e)
  {
    adaptee.menuItem3_actionPerformed(e);
  }
}


class MainFrame_menuItem4_actionAdapter implements java.awt.event.ActionListener
{
  MainFrame adaptee;

  MainFrame_menuItem4_actionAdapter(MainFrame adaptee)
  {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e)
  {
    adaptee.menuItem4_actionPerformed(e);
  }
}

class MainFrame_menuItem5_actionAdapter implements java.awt.event.ActionListener
{
  MainFrame adaptee;

  MainFrame_menuItem5_actionAdapter(MainFrame adaptee)
  {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e)
  {
    adaptee.menuItem5_actionPerformed(e);
  }
}

⌨️ 快捷键说明

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