然后,在Drawing(String ss)中添加add(new Draw(), BorderLayout.CENTER )就可以运行了,大家不妨试一下。下一篇将介绍如何完善这个程序,使得其具有绘图功能。上述创建图形界面的完整代码如下:
import java.awt.*;
public class Drawing extends Frame
{
Drawing(String ss)
{
setTitle(ss);//设置标题
setSize (400,400);//设置大小
setResizable( false );//将大小改为不可更改的
setMenuBar( new MenuUp() );//添加菜单项
add(new MenuDown(), BorderLayout.SOUTH);//在最南边添加MenuDown对象
add(new Draw(), BorderLayout.CENTER );//在中心添加Draw对象
setVisible( true );
addWindowListener( new WindowAdapter(){
public void windowClosing( WindowEvent e ){
System.exit( 0 );
}
});//增加关闭程序功能
}
public static void main(String args[])
{
Drawing d = new Drawing("Paint Program");//创建画图对象
}
class MenuDown extends Panel
{
public MenuDown()
{
Choice ce = new Choice();//创建一个Choice对象
ce.addItem( "Rectangle" );
ce.addItem( "Ellipse" );//定义Choice中的选项
add( ce );//添加Choice对象
CheckboxGroup cbg = new CheckboxGroup();//创建一个单选框的框架
Checkbox cb1 = new Checkbox( "Red", cbg, false );
Checkbox cb2 = new Checkbox( "Green", cbg, false );
Checkbox cb3 = new Checkbox( "Blue", cbg, false );
Checkbox cb4 = new Checkbox( "Black", cbg, true); //创建4个单选框
add( cb1 );
add( cb2 );
add( cb3 );
add( cb4 );//将4个单选框添加到Panel中
Checkbox cb = new Checkbox( "Filled", false);//创建复选框
add( cb );//在Panel中添加复选框
}
}
class MenuUp extends MenuBar
{
public MenuUp(){
Menu m1 = new Menu( "File" );
Menu m2 = new Menu( "Help" );//创建两个菜单目录项
MenuItem mi1 = new MenuItem( "Clear" );
MenuItem mi2 = new MenuItem( "Print" );
MenuItem mi3 = new MenuItem( "Quit" );//创建3个菜单项
m1.add( mi1 );
m1.add( mi2 );
m1.addSeparator();
m1.add( mi3 );//将3个菜单项添加到名为File的菜单下,并加分隔符
add( m1 );
add( m2 );
setHelpMenu( m2 );//将菜单目录项添加到MenuBar中
}
}
class Draw extends Canvas{}
}
