`

Java 编程练习题(四)

阅读更多



 1.
设计一个资源管理编辑器,有二层节点结构,第一层内容有我的公文包、我的电脑、收藏夹。第二层对应第一层有(公司文件、个人信件、私人文件)、(本机磁盘(C:)"本机磁盘(D:)、本机磁盘(E:))、(新浪、网易、搜狐)。当点击第二层的节点时,在右边的文本框中可以显示和编辑文本。

import java.awt.*;

 import java.awt.event.*;

 import javax.swing.*;

 import javax.swing.tree.*;

 import javax.swing.event.*;

 

 public class Eg_1 extends JFrame implements TreeSelectionListener{

   

    JTextArea text=new JTextArea(20,20);

    JTree tree=null;

   

    public Eg_1() {

       Container contentPane = getContentPane(); //创建内容面板实例

       DefaultMutableTreeNode root = new DefaultMutableTreeNode("资源管理器");

                  //12-14行,创建树的四个节点,16行将这四个节点加到根节点上。

       DefaultMutableTreeNode node1 = new DefaultMutableTreeNode("我的公文包");

       DefaultMutableTreeNode node2 = new DefaultMutableTreeNode("我的电脑");

       DefaultMutableTreeNode node3 = new DefaultMutableTreeNode("收藏夹");

       DefaultMutableTreeNode node4 = new DefaultMutableTreeNode("Readme");

        root.add(node1);root.add(node2);root.add(node3);root.add(node4);

       DefaultMutableTreeNode leafnode = new DefaultMutableTreeNode("公司文件");

        node1.add(leafnode);     //17-36行为三个节点加入子节点

        leafnode = new DefaultMutableTreeNode("个人信件");

        node1.add(leafnode);

        leafnode = new DefaultMutableTreeNode("私人文件");

        node1.add(leafnode);

        leafnode = new DefaultMutableTreeNode("本机磁盘(C:)");

        node2.add(leafnode);

        leafnode = new DefaultMutableTreeNode("本机磁盘(D:)");

        node2.add(leafnode);

        leafnode = new DefaultMutableTreeNode("本机磁盘(E:)");

        node2.add(leafnode);

        DefaultMutableTreeNode node31 = new DefaultMutableTreeNode("网站列表");

        node3.add(node31);

        leafnode = new DefaultMutableTreeNode("新浪");

        node31.add(leafnode);

        leafnode = new DefaultMutableTreeNode("网易");

        node31.add(leafnode);

        leafnode = new DefaultMutableTreeNode("搜狐");

        node31.add(leafnode);

        tree = new JTree(root);  //实例化Tree的对象。

       JScrollPane scrollpane = new JScrollPane(text);//有滚动条的的文本区

       JSplitPane splitpane=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,

                                            true,tree,scrollpane);

       tree.addTreeSelectionListener(this);//tree安装监视器,

       contentPane.add(splitpane); //splitpane加到内容面板上

       pack();

       setVisible(true);setBounds(70,80,200,300);

       addWindowListener(new WindowAdapter() {

           public void windowClosing(WindowEvent e) {

               System.exit(0);

           }

       });

    }

   

    public void valueChanged(TreeSelectionEvent e){ //TreeSelectionListener的方法

        if(e.getSource()==tree)   {

            DefaultMutableTreeNode   node=

                     (DefaultMutableTreeNode)tree.getLastSelectedPathComponent();

            // getLastSelectedPathComponent获取选中的节点创建实例node

            if(node.isLeaf())   {

                String str=node.toString();

                if(str.equals("公司文件"))   {

                    text.setText(str+":这是公司的文件!");

                }

                else if(str.equals("个人信件"))  {

                    text.setText(str+":这是个人往来的信件!");

                }

                else if(str.equals("私人文件"))   {

                    text.setText(str+":这是私人信件!");

                }

                else if(str.equals("本机磁盘(C:)"))  {

                    text.setText(str+":磁盘内容如下");

                }

                else if(str.equals("本机磁盘(D:)"))   {

                    text.setText(str+":这是D盘内容!");

                }

                else if(str.equals("本机磁盘(E:)"))  {

                    text.setText(str+":这是E盘内容!");

                }

                else if(str.equals("奇摩站"))   {

                    text.setText(str+":这是奇摩站的地址www.qimo.com ");

                }

                else if(str.equals("职棒消息"))  {

                    text.setText(str+":这是职棒消息站的地址www.zb.com ");

                }  

                else if(str.equals("网络书店")) {

                    text.setText(str+":这是网络书店站的地址www.yad.com ");

                } 

            }

            else  {            

                text.setText(node.getUserObject().toString()); 

            }

        }

    }

    

    public static void main(String args[]) {

        new Eg_1();

    }

}

 

 

 

 

 

2. 设计一市场调查问卷程序,其中一项是调查用户在给出的几家电子生产厂家中最喜欢哪几家,所喜欢的产品有那几类?在用户图形界面窗口中要求提供五个企业的名字选择按钮(在一行上),名字分别是:长虹海尔“LG”三星创维。产品类型有:电视机、DVD、数码相机、空调,并用四个带有图形选择框(放在一列上)来进行选择,没选之前的图形是x.jpg(不喜欢)。当用鼠标点击图形复选框时,图形将显示是的r.jpg图形(喜欢)。



 

import java.awt.*;

 import java.awt.event.*;

 import javax.swing.*;

 

 public class Eg_2 implements ItemListener{

      //                                                选项监听?接口

     

      JFrame  f;

      JCheckBox  c1,c2,c3;

     

    public  Eg_2(){

           f=new JFrame();

           Container  con=f.getContentPane();

           con.setLayout(new BorderLayout());

          

           JPanel  p1=new JPanel(new GridLayout(1,3));

           p1.setBorder(BorderFactory.createTitledBorder("请选择你喜欢的图片"));

           c1=new JCheckBox("pci1",new ImageIcon("x1.jpg"));

           c2=new JCheckBox("pci2",new ImageIcon("x1.jpg"));

           c3=new JCheckBox("pci3",new ImageIcon("x1.jpg"));

           c1.addItemListener(this);

           c2.addItemListener(this);

           c3.addItemListener(this);

          

           p1.add(c1);

           p1.add(c2);

           p1.add(c3);

           con.add(p1,BorderLayout.NORTH);

          

          

           f.setSize(400,300);

           f.setVisible(true);       

    } 

    //ItemListener接口中的方法:

    //选择或取消复选框时执行该方法         

    public void itemStateChanged(ItemEvent e){

           //               选项状态改变方法             

           if(e.getStateChange()==e.SELECTED){//选择

                  if(e.getSource()==c1){

                         c1.setIcon(new ImageIcon("x.jpg"));

                  }

           }

           else{//取消选择 

                  if(e.getSource()==c1){

                         c1.setIcon(new ImageIcon("x1.jpg"));

                  }

           }

    }

    public static void main(String args[]) {

        new Eg_2();

    }

}

 

 

 

 

  • 大小: 8.5 KB
  • 大小: 9.8 KB
分享到:
评论

相关推荐

    经典java编程练习题

    经典Java编程练习题 Java编程练习题是一组经典的编程练习题,旨在考核Java编程能力。这30道练习题涵盖了Java基础知识、数据类型、运算符、控制结构、方法、数组、面向对象编程等方面的知识点。 知识点1: Java基础...

    Java编程练习题

    本资源“Java编程练习题”旨在帮助学习者深化对Java Standard Edition(Java SE)的理解,通过实践来提高编程技能。Java SE是Java平台的基础,提供了用于桌面应用程序和服务器端应用程序开发的核心API。 这些练习题...

    Java课后编程练习题答案

    "Java课后编程练习题答案"提供了对这些练习题的解答,帮助学习者检查自己的理解和解决方法。 一、Java基础 Java的基础包括语法、数据类型、变量、运算符、流程控制(如if-else、switch、for、while循环)以及方法。...

    Java面向对象编程练习题.pdf

    Java面向对象编程练习题 本资源摘要信息涵盖了 Java 面向对象编程的基础知识,通过三个练习题,展示了 Java 编程语言的基本概念和应用。 练习题 01: 类的成员变量 本练习题展示了 Java 中类的成员变量的概念。类 ...

    (IT类课程习题)Java编程练习题Java面试题.zip

    (IT类课程习题)Java编程练习题Java面试题.zip (IT类课程习题)Java编程练习题Java面试题.zip (IT类课程习题)Java编程练习题Java面试题.zip (IT类课程习题)Java编程练习题Java面试题.zip

    java编程练习题

    java编程练习题,内有许多基础、经典的java编程练习题,快来下载吧!

    (IT类课程习题)Java编程练习题Java面试题PGJ.zip

    (IT类课程习题)Java编程练习题Java面试题【PGJ】.zip (IT类课程习题)Java编程练习题Java面试题【PGJ】.zip (IT类课程习题)Java编程练习题Java面试题【PGJ】.zip (IT类课程习题)Java编程练习题Java面试题【PGJ】.zip

    50道JAVA基础编程练习题

    Java 基础编程练习题汇总 本资源提供了 50 道 Java 基础编程练习题,涵盖了 Java 编程的多个方面,包括数据类型、运算符、控制结构、函数、数组、字符串等。这些练习题可以帮助初学 Java 编程的开发者更好地理解 ...

    (IT类课程习题)Java编程练习题Java面试题PGC.zip

    (IT类课程习题)Java编程练习题Java面试题【PGC】.zip (IT类课程习题)Java编程练习题Java面试题【PGC】.zip (IT类课程习题)Java编程练习题Java面试题【PGC】.zip (IT类课程习题)Java编程练习题Java面试题【PGC】.zip

    Java编程思想练习题答案(代码)

    通过这些练习题和代码实现,学习者可以逐步提升Java编程能力,理解Java编程思想的精髓,从而在实际项目中游刃有余。这些解答不仅提供正确结果,还应该解释背后的原理和最佳实践,有助于深化理解并提升编程技巧。

    java练习题-网络编程

    在Java编程中,网络编程是一个重要的领域,主要涉及到如何通过网络连接进行数据传输。这里我们关注的是TCP Socket通信,这是一种面向连接的、可靠的、基于字节流的传输层通信协议。 1. **InetAddress类**: `...

    Java编程练习题资源 学习Java编程是一项重要的技能,无论是初学者还是有经验的开发人员都可以从练习题中受益 这份练习题

    【Java编程练习题资源】 学习配套博客地址:https://blog.csdn.net/qq_36631076/article/details/136791045 在学习Java编程时,熟练掌握常用的Java类和API是至关重要的。以下是关于Java编程基础、面向对象和常用类...

    Java编程练习题资源 -各章节练习刷题

    这份“Java编程练习题资源 - 各章节练习刷题”是为那些希望提升Java技能或巩固基础知识的学习者准备的宝贵资料。通过解决这些练习题,无论是初学者还是经验丰富的开发人员,都能加深对Java语言的理解,提高解决问题...

    Java编程思想练习题答案

    以下是对"Java编程思想练习题答案"这个主题的详细知识点解析: 1. **基础语法**:Java的基础语法包括变量声明、数据类型(基本类型和引用类型)、运算符、流程控制(if语句、switch语句、循环语句)等。在解答练习...

    java编程思想练习题答案

    《Java编程思想》是Bruce Eckel的经典之作,它深入浅出地介绍了Java语言的核心概念和技术。这本书中的练习题是学习者提升技能的重要途径,而这个压缩包提供的就是这些练习题的解答,以源码的形式保存为.java文件。...

    JAVA基础编程练习题50题及经典算法90题【含源码及答案】-史上最全

    Java基础编程练习题和经典算法是提升编程技能和准备面试的关键环节。这50题的基础编程练习涵盖了Java语言的核心概念,如数据类型、控制结构、类与对象、异常处理、集合框架等,旨在帮助学习者巩固基础知识并提高编程...

    Java编程思想练习题

    《Java编程思想练习题》是一份宝贵的资源,旨在帮助学习者深入理解和掌握Java编程的核心概念。这份资料可能包含了丰富的编程习题,旨在强化对Java语言的理解,提高编程技能。通过解决这些练习,开发者可以巩固基础...

    JAVA编程题全集(100题及答案)

    ### JAVA编程题全集知识点详解 #### 题目一:屏幕输出“你好!” - **知识点概述**:本题目主要考察的是Java的基本语法结构,包括如何定义一个类、类中的主方法`main`以及如何使用`System.out.print()`或`System....

Global site tag (gtag.js) - Google Analytics