首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Java 编程习题(三)

2012-10-27 
Java编程练习题(三)?1. 设计一GUI程序,在窗口中制作一个按钮,当将鼠标的光标移到按钮上时显示图一,按下按

Java 编程练习题(三)



?1. 设计一GUI程序,在窗口中制作一个按钮,当将鼠标的光标移到按钮上时显示图一,按下按钮时显示图二,离开按钮时显示图三。


Java   编程习题(三)Java   编程习题(三)Java   编程习题(三)

?
?? ?? ??

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

???

public class Eg_1{

??? public static void main(String args[]){

??????? JFrame f = new JFrame("myRollover");

??????? Container contentPane = f.getContentPane();

??????? Icon rollover = new ImageIcon(".\\1.gif"); //创建icon对像实例rollover

??????? Icon general = new ImageIcon(".\\2.gif");//创建icon对像实例 general

??????? Icon press = new ImageIcon(".\\3.gif"); //创建icon对像实例 press

??????? Icon disable = new ImageIcon(".\\4.gif");//创建icon对像实例 disable

??????? JButton b = new JButton();????????????????????? //创建按钮对像实例 b

??????? b.setRolloverEnabled(true);????????????? //设按钮b的标示具有翻滚的功能

??????? b.setIcon(general);?????? //将icon实例general加载到按钮上,按钮上就显示该图形

??????? b.setRolloverIcon(rollover);? //按钮翻滚后显示的图形是rollover

??????? b.setPressedIcon(press);????? //鼠标按下时显示press图形

??????? contentPane.add(b);?????????? //将按钮加到内容面板上

??????? f.pack();???????????????????? //显示窗口

??????? f.show();???????????????????? //显示窗口中的组件

??????? f.addWindowListener(new WindowAdapter() {//处理窗口关闭

??????????????? public void windowClosing(WindowEvent e) {

??????????????????? System.exit(0);

??????????????? }

??????????? });

???? }

}

?

?

?

?

?

2. 设计一程序,要求在图形用户界面中输入产品的说明书,输入内容有产品名称、产品规格、产品编号、产品说明。


Java   编程习题(三)
?

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

???

public class Eg_2{

??? public static void main(String args[]){??

??????? JFrame f = new JFrame("JTextArea例题");? //创建JFrame窗口容器类对象f。

??????? Container contentPane = f.getContentPane();//创建内容面板对象实例

??????? contentPane.setLayout(new BorderLayout()); //设置内容面板采用边界布局管理器

??????? JPanel p1 = new JPanel();????????????????? //创建面板容器实例。

? ??????p1.setLayout(new GridBagLayout());???????? //设置面板采用网袋布局管理器

??????? GridBagConstraints gbc = new GridBagConstraints();//创建网袋格布局对象gbc。

??????? gbc.anchor = GridBagConstraints.WEST; //确定网袋格布局管理器对象gbc的位置

??????? gbc.insets = new Insets(2,2,2,2);???????? //gbc与边界的距离(上,左,下,右)

??????? p1.setBorder(BorderFactory.createTitledBorder("建构一般的JTextArea"));

?????????????????????????????????????????????? //设置边界框和说明文字???????

??????? JLabel l1 = new JLabel("产品名称:");??? //创建4个标签实例

??????? JLabel l2 = new JLabel("产号编号:");???

??????? JLabel l3 = new JLabel("产品规格:");???????

??????? JLabel l4 = new JLabel("产品说明:");???????

??????? JTextArea t1 = new JTextArea(2,8);????? //创建4个文本域实例

??????? JTextArea t2 = new JTextArea(10,2);//书有错,请改正????????????????????

??????? JTextArea t3 = new JTextArea("TravelMate 372 系列",3,10);???????

??????? JTextArea t4 = new JTextArea("采用因特尔迅驰移动技术,因特尔@奔腾M处理器1.5GHz",5,10);?????????????? //以最合适的长度存放字符串

??????? t1.setText("宏基笔记本电脑");?? //向文本域t1写入文字数据,清除以前的内容

??????? t2.append("A19345-by3874534-34345"); //在文本域t2中已有文字后写入该字符串,

??????? t4.setLineWrap(true); /*激活自动换行功能,当文字输入长度大于文本域提供的宽

?????????????????????????? 度时,会自动换行。*/

??????? gbc.gridy=1;gbc.gridx=0;p1.add(l1,gbc);/*29-36行将4个标签和4个文本域按指定

???????????????????? 的位置加到面板容器中。*/

??????? gbc.gridx=1;p1.add(t1,gbc);

??????? gbc.gridy=2;gbc.gridx=0;p1.add(l2,gbc);?????????????????????

??????? gbc.gridx=1;p1.add(t2,gbc);

??????? gbc.gridy=3;gbc.gridx=0;p1.add(l3,gbc);

??????? gbc.gridx=1;p1.add(t3,gbc);

??????? gbc.gridy=4;gbc.gridx=0;p1.add(l4,gbc);

??????? gbc.gridx=1;p1.add(t4,gbc);???????

??????? contentPane.add(p1); //把面板容器加到内容面板里。

??????? f.pack();?????????? //使窗口可见

??????? f.show();?????????? //使窗口中的组件可见

??????? f.addWindowListener(new WindowAdapter() {

??????????????? public void windowClosing(WindowEvent e) {???????????????????

????? ??????????????System.exit(0);???????????

??????????????? }

??????????? });

???? }

}

?

?

?

?

?

3. 设计一程序,在窗口中显示一个名为JEditorPane.html文件.

Java   编程习题(三)

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import java.io.*;

?//开始编写文本显示类,给类起一个好名字,别忘了在类名前加上public class

public class Eg_3 {

?

??? public static void main(String args[]) {?????? //在类体中写主方法main()

??????? JEditorPane editPane = null; //定义一个JEditorPane 的对象editPane,并初始化为null。

??????? //

??????? try{????????????????????

??????????? File file = new File ("d:\\w618\\index.htm");//先创建一文件类的实例。

??????????? String str = file.getAbsolutePath();/*通过文件类对象调用方法getAbsolutePath()获的

????????????????????? 文件所在的路径,并将该路径支付给字符串变量str。*/

??????????? str = "file:"+str; //给一字符串变量赋值。----书错

??????????? editPane = new JEditorPane();//创建JEditorPane类的实例。

??????????? editPane.setPage(str);

???????? }????? //由该实例对象负责将字符串显示在窗口面板上。

???????? catch(IOException ioe) {????? /*捕捉文件打不开或不存在等异常事件,然后对异

?????????????????????????? 常事件进行处理,关闭窗口。*/

??????????? ioe.printStackTrace(System.err);//打印发生异常的信息????????

??????????? System.exit(0);

???????? }

????????

??????? JFrame f = new JFrame("文本显示窗口");

??????? f.setContentPane(new JScrollPane(editPane));/* 由类对象f 调用方法

???????????????????????? setContentPane,设置窗口容器面板为滚动式面板.*/

??????? f.pack();????????? ?????//设置窗口面板的大小;

??????? f.show();?????

???? } //主方法main()结束

????

}?? //JEditPane1类结束

?

?

?

?

?

?

热点排行