程序填空题(二)

10. 应用树结点构造一棵树,其根结点为 “M0407”,根结点下有三个结点 “C040701” “C040702” “C040703”,并且结点“C040701”又包括二个树叶结点 “R201”“R202”。提示:结点类为DefaultMutableTreeNode

   import javax.swing.*;

   import javax.swing.tree.*;

   public class TreeTest extends JFrame{

       public TreeTest(){

           //(1)定义树的根结点

          

           //定义“C040701” “C040702” “C040703”三个结点

           DefaultMutableTreeNode r1 = new DefaultMutableTreeNode(“C040701”);

           DefaultMutableTreeNode r2 = new DefaultMutableTreeNode(“M040702”);

           DefaultMutableTreeNode r3 = new DefaultMutableTreeNode(“M040703”);

           //(2) 定义“R201”“R202”二个结点

          

           //(3)使用根结点创建树

          

           //(4)为根结点添加r1, r2, r3三个子结点

          

           //为结点r1添加“R201”“R202”二个子结点

          

           getContentPane().add(tree);

           setSize(200,200);

           setVisible(true);

}

}

 

 

11. 处理树结点选择事件,事件类为TreeSelectionEvent,事件监听接口为TreeSelectionListener

import javax.swing.*;

//(1)引入其它的相关包

 

public class TreeDemo{

    public TreeDemo(){

       DefaultMutableTreeNode root =  new DefaultMutableTreeNode(“Room”);

       DefaultMutableTreeNode r1 =new DefaultMutableTreeNode(“R1”);

       DefaultMutableTreeNode r2 =new DefaultMutableTreeNode(“R2”);

       //(2)创建树,其根结点为root, 根结点下有二个子结点r1r2

       

       //(3)为树注册监听器

      

       JFrame fr = new JFrame();

       fr.getContentPane().add(tree);

       fr.setSize(300,300);

       fr.setVisible(true);

}

//(4)声明内部类TreeHandler,实现监听

{

   public void valueChanged(TreeSelectionEvent){

   //得到事件源对象,并强制转换为JTree类型

JTree tree = (5);

   TreeNode node = (TreeNode)tree.getLastSelectedPathComponent();

   System.out.println(“You selected:” + node.toString());

}

}

}

 

 

12. 定义类ThdTest,其父类为Thread类;并在主方法中创建一个ThdTest的对象,同时启动该线程对象。

//声明类ThdTest,其父类为Thread

(1)

{

   public void run(){

       for(int i = 0; i < 10; i++){

          //输出当前线程的名字和i的值

          (2)

          try{

//让当前线程休眠100ms

(3)

}catch(Exception e){ e.printStackTrace ();}

}

}

}

public class Demo{

   public static void main(String[] args){

      //创建一个ThdTest的对象

      (4)

      //启动线程对象,使其进入就绪状态

(5)

}

}

 

13. 定义类ThdDemo,实现接口Runnable;并在主方法中创建一个ThdDemo的对象td,然后使用对象td创建一个线程对象,同时启动该线程对象。

//声明类ThdDemo,实现接口Runnable

(1)

class ThdDemo implements Runnable{

   public void run(){

     for(int i = 0; i < 10; i++){

          //输出当前线程的名字和i的值

          System.out.println(Thread.currentThread().getName() + “:” + i);

          try{

//让当前线程休眠100ms

(2)

}catch(Exception e){ e.printStackTrace ();}

}

}

}

public class Demo{

   public static void main(String[] args){

      //创建一个ThdDemo的对象td

      (3)

      //使用td创建线程对象

      (4)

      //启动线程对象,使其进入就绪状态

(5)

}

}

 

14.制作一个窗体,包括一个带图标的按钮(JButton类对象),并设置边框,当用户点击按钮时,弹出一个确认对话框。

import javax.swing.*;

import javax.swing.border.*;

import java.awt.*;

class ViewDemo{

    JFrame fr;

    public ViewDemo(){

       //ImageIcon类包装一张图片(java.gif)

//该图片在当前目录的img子目录下

       (1)

//创建一个带有图标的按钮btn

(2)

/**使用线形边框类的构造方法LineBorder(Color c, int n)

*创建一个边框对象bd,其中c为边框的颜色,n为边框的粗细。

*/

(3)

btn.setBorder(bd);

//给按钮注册监听事件

(4)

fr = new JFrame();

Container c = fr.getContentPane();

c.add(btn);

fr.setSize(300,300);

fr.setVisible(true);

}

class BtnHandler implements ActionListener{

   public void actionPerformed(ActionEvent e){

     String msg = "Are you sure?";

     /*使用JOptionPane类的静态方法showConfirmDialog(Frame f, String s),其中f为对话框所属的窗体,s为对话框显示的信息,弹出一个确认对话框。*/

     (5)

}

}

}

   

15.制作一个Applet小应用程序,设置其布局为BorderLayout,定义一个按钮和多行文本框并分别放到 “North” 区域和 “Center” 区域。创建网页文件运行这个Applet程序。

import java.applet.*;

import javax.swing.*;

//(1)声明AppletDemo类,其父类为Applet,并实现接口ActionListener

{

   JButton btn;

      JTextArea txt;

public void init(){

      //设置其布局为BorderLayout

      (2)

      btn = new JButton(“Show Msg”);

      txt = new JTextArea(3, 20);

      //把按钮btn放到 “North” 区域,txt放到 “Center” 区域

      (3)

      //给按钮注册监听器

      (4)

}

public void actionPerformed(ActionEvent e){

   txt.append(btn.getText());

}

}

网页文件为:

<BODY>

<applet code="(5) " width="300" height="200"></applet>

</BODY>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值