} else {
text2.setText(\输入了非法格式的E-mail 地址\} } } }
public class Test {
public static void main(String args[]) {
new WindowBox(); } }
8. 写一个应用程序,要求编写一个Pane l 的子类MyPanel,MyPane l 中有一个文本框和一个按钮,要求 MyPane l 的实例作为其按钮的ActionEven t 事件的监视器,当单击按钮时,程序获取文本框中的文本, 并将该文本作为按钮的名称。然后在编写一个Fram e 的子类,即窗口。窗口的布局为BorderLayou t 布 局。窗口中添加两个MyPane l 面板,分别添加到窗口的东部区域和西部区域。 答: import java.awt.*; import java.awt.event.*;
class MyPanel extends Panel implements ActionListener {
String name; TextField text; Button button; MyPanel() {
text=new TextField(10); button=new Button(\确定\add(text); add(button);
button.addActionListener(this); addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
} } ); }
public void actionPerformed(ActionEvent e) {
if(e.getSource()==button) {
name=text.getText(); button.setLabel(name); } } }
class MyFrame extends Frame {
MyPanel panel1,panel2; MyFrame() {
panel1=new MyPanel(); panel2=new MyPanel();
add(panel1,BorderLayout.EAST); add(panel2,BorderLayout.WEST); setBounds(100,100,400,100); setVisible(true); validate(); } }
public class Test {
public static void main(String args[]) {
MyFrame win=new MyFrame(); } }
9. 参照例子7.1 8 编写一个应用程序,要求有一个画布,在画布上绘制一个矩形,用户通过文本框输入矩
形的宽和高以及矩形左上角的位置坐标。 答: import java.awt.*;
import java.awt.event.*; class Mycanvas extends Canvas {
int x,y,w,h; Mycanvas() {
setBackground(Color.cyan); }
public void setX(int x) { this.x=x; }
public void setY(int y) { this.y=y; }
public void setW(int w) { this.w=w; }
public void setH(int h) { this.h=h; }
public void paint(Graphics g) {
g.drawRect(x,y,w,h); } }
class WindowCanvas extends Frame implements ActionListener {
Mycanvas canvas;
TextField text1,text2,text3,text4; Button button; WindowCanvas() {
canvas=new Mycanvas(); text1=new TextField(4);
text2=new TextField(4); text3=new TextField(5); text4=new TextField(5);
Panel pNorth=new Panel(),pSouth=new Panel(); button=new Button(\确定\button.addActionListener(this); pNorth.add(new Label(\矩形的宽: \pNorth.add(text3);
pNorth.add(new Label(\矩形的高: \pNorth.add(text4);
pSouth.add(new Label(\左上角位置坐标:\pSouth.add(text1); pSouth.add(text2); pSouth.add(button);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0); } } );
add(canvas,BorderLayout.CENTER); add(pNorth,BorderLayout.NORTH); add(pSouth,BorderLayout.SOUTH); setBounds(100,100,500,500); setVisible(true); validate(); }
public void actionPerformed(ActionEvent e) {
int x,y,w,h; try {
x=Integer.parseInt(text1.getText()); y=Integer.parseInt(text2.getText()); w=Integer.parseInt(text3.getText()); h=Integer.parseInt(text4.getText());
canvas.setX(x); canvas.setY(y); canvas.setW(w); canvas.setH(h); canvas.repaint(); }
catch(NumberFormatException ee) {
x=0;y=0;w=0;h=0; } } }
public class Test {
public static void main(String args[]) {
new WindowCanvas(); } }
10.编写应用程序,有一个窗口对象,该窗口取它的默认布局: BorderLayou t 布局,北面添加一个Lis t 组
件,该组件有四个商品名称的选项。中心添加一个文本区,当选择Lis t 组件中的某个选项后,文本区 显示对该商品的价格和产地:当双击Lis t 组件中的某个选项后,文本区显示该商品的详细广告。 答: import java.awt.*; import java.awt.event.*;
class WindowGoods extends Frame implements ActionListener,ItemListener {
String s[]={\产地:北京\产地:上海\产地:沈阳\产地:广东\String p[]={\价格:3200\价格:158\价格:13.2\价格:320/打\
String a[]={\本商品****\本商品*****\本商品******\本商品*******\List list; TextArea text; WindowGoods() {
list=new List(3,false); text=new TextArea(6,20); text.setEditable(false); list.add(\商品1\
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《Java2实用教程》课后习题参考答案(7)在线全文阅读。
相关推荐: