Java2实用教程(第二版)程序代码——第十四章 Component类的常用方法

  1None.gif//例子1
  2None.gifimport java.applet.*;import java.awt.*;
  3None.gifimport java.awt.event.*;
  4None.gifimport javax.swing.JTextArea;
  5None.gifpublic class Example14_1 extends Applet implements ItemListener
  6ExpandedBlockStart.gifContractedBlock.gifdot.gif{  List list  ; 
  7InBlock.gif   JTextArea text;
  8InBlock.gif   public void init()
  9ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  list=new List(6,false); 
 10InBlock.gif     text=new JTextArea(6,15);text.setForeground(Color.blue);
 11InBlock.gif     GraphicsEnvironment ge=GraphicsEnvironment.getLocalGraphicsEnvironment();
 12InBlock.gif     String fontName[]=ge.getAvailableFontFamilyNames();
 13InBlock.gif      for(int i=0;i<fontName.length;i++)
 14ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{  list.add(fontName[i]);
 15ExpandedSubBlockEnd.gif        }

 16InBlock.gif      add(list);
 17InBlock.gif      Panel p=new Panel();
 18InBlock.gif      p.setBackground(Color.pink); 
 19InBlock.gif      p.add(text);
 20InBlock.gif      add(p);
 21InBlock.gif      list.addItemListener(this);
 22ExpandedSubBlockEnd.gif   }
 
 23InBlock.gif   public void itemStateChanged(ItemEvent e)
 24ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  String name=list.getSelectedItem();
 25InBlock.gif      Font f=new Font(name,Font.BOLD,16);
 26InBlock.gif      text.setFont(f);
 27InBlock.gif      text.setText("\nWelcome 欢迎您");
 28ExpandedSubBlockEnd.gif   }

 29ExpandedBlockEnd.gif}

 30None.gif
 31None.gif//例子2
 32None.gifimport java.awt.*;import java.awt.event.*;
 33None.gifpublic class Example14_2 extends java.applet.Applet implements ActionListener
 34ExpandedBlockStart.gifContractedBlock.gifdot.gif{  Button button;
 35InBlock.gif   Label label;
 36InBlock.gif   public void init()
 37ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  button=new Button("横向走动"); button.setBackground(Color.red);
 38InBlock.gif      button.addActionListener(this);
 39InBlock.gif      label=new Label("我可以被碰掉",Label.CENTER);
 40InBlock.gif      label.setBackground(Color.yellow);
 41InBlock.gif      add(button); add(label);
 42ExpandedSubBlockEnd.gif   }

 43InBlock.gif public void actionPerformed(ActionEvent e)
 44ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  Rectangle rect=button.getBounds();
 45InBlock.gif      if(rect.intersects(label.getBounds()))
 46ExpandedSubBlockStart.gifContractedSubBlock.gif         dot.gif{  label.setVisible(false);
 47ExpandedSubBlockEnd.gif         }

 48InBlock.gif      if(label.isVisible())
 49ExpandedSubBlockStart.gifContractedSubBlock.gif         dot.gif{  button.setLocation(rect.x+3,rect.y);
 50ExpandedSubBlockEnd.gif         }

 51InBlock.gif      else
 52ExpandedSubBlockStart.gifContractedSubBlock.gif         dot.gif{  button.setLocation(rect.x,rect.y+3); 
 53InBlock.gif            button.setLabel("纵向走动");
 54ExpandedSubBlockEnd.gif         }

 55ExpandedSubBlockEnd.gif   }

 56ExpandedBlockEnd.gif}

 57None.gif
 58None.gif//例子3
 59None.gifimport java.awt.*;import java.awt.event.*;
 60None.gifclass MyCanvas extends Canvas 
 61ExpandedBlockStart.gifContractedBlock.gifdot.gif{  int n=-1;
 62InBlock.gif   MyCanvas()
 63ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  setSize(150,120);setBackground(Color.pink);
 64ExpandedSubBlockEnd.gif   }

 65InBlock.gif   public void paint(Graphics g)
 66ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  g.setColor(Color.red);
 67InBlock.gif      g.drawString("部分清除时我将消失",10,12);
 68InBlock.gif      g.drawString("我们正在学习repaint方法",10,80);
 69ExpandedSubBlockEnd.gif   }

 70InBlock.gif   public void setN(int n)
 71ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  this.n=n;
 72ExpandedSubBlockEnd.gif   }

 73InBlock.gif   public void update(Graphics g) 
 74ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  int width=0, height=0;
 75InBlock.gif      width=getSize().width;height=getSize().height;
 76InBlock.gif      if(n==0)
 77ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{  g.clearRect(0,0,width,height);
 78InBlock.gif           //paint(g); //如果取消该注释,update的功能就与父类相同。
 79ExpandedSubBlockEnd.gif        }

 80InBlock.gif      else if(n==1)
 81ExpandedSubBlockStart.gifContractedSubBlock.gif        dot.gif{  g.clearRect(2,2,width,40);
 82ExpandedSubBlockEnd.gif        }

 83ExpandedSubBlockEnd.gif   }

 84ExpandedBlockEnd.gif}

 85None.gifpublic class Example14_3 extends java.applet.Applet implements ActionListener
 86ExpandedBlockStart.gifContractedBlock.gifdot.gif{  Button b1,b2;MyCanvas canvas;
 87InBlock.gif   public void init()
 88ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  canvas=new MyCanvas();
 89InBlock.gif      b1=new Button("全部清除"); b1.addActionListener(this);
 90InBlock.gif      b2=new Button("部分清除"); b2.addActionListener(this);
 91InBlock.gif      add(b1); add(b2); add(canvas);
 92ExpandedSubBlockEnd.gif   }
 
 93InBlock.gif   public void actionPerformed(ActionEvent e)
 94ExpandedSubBlockStart.gifContractedSubBlock.gif   dot.gif{  if(e.getSource()==b1)
 95ExpandedSubBlockStart.gifContractedSubBlock.gif       dot.gif{  canvas.setN(0);canvas.repaint();
 96ExpandedSubBlockEnd.gif       }
  
 97InBlock.gif      if(e.getSource()==b2)
 98ExpandedSubBlockStart.gifContractedSubBlock.gif       dot.gif{  canvas.setN(1);canvas.repaint();
 99ExpandedSubBlockEnd.gif       }
  
100ExpandedSubBlockEnd.gif   }

101ExpandedBlockEnd.gif}

102None.gif

转载于:https://www.cnblogs.com/rookieport/archive/2005/05/27/163359.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/424283.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

239. Sliding Window Maximum

文章目录1理解题目2 思路2.1暴力求解2.2双端队列1理解题目 输入&#xff1a;整数数组nums&#xff0c;滑动窗口大小k 输出&#xff1a;整数数组 规则&#xff1a;在一个窗口内只能看到k个数&#xff0c;找一个最大的数&#xff0c;添加到返回数组中。每次滑动向右滑动一步。 …

第八十九期:还在手动盖楼领喵币?双十一这群开发者竟然如此「作弊」

开发者构建了一个脚本以自动逛双十一会场&#xff0c;让使用者轻松完成各种领币任务&#xff0c;同时还能解放双手。 作者&#xff1a;Synced 每年的 11 月份&#xff0c;总觉得有些硝烟弥漫。好在淘宝双十一领喵币&#xff0c;也已经有了自动化脚本。 感觉还未从去年双十一…

Serverless简介

说起当前最火的技术&#xff0c;除了最新的区块链&#xff0c;AI&#xff0c;还有一个不得不提的概念是Serverless。Serverless作为一种新型的互联网架构直接或间接推动了云计算的发展&#xff0c;从AWS Lambda到阿里云函数计算&#xff0c;Serverless一路高歌&#xff0c;同时…

使用matlab工具研究神经网络的简单过程(网络和数据下载)

本人在神经网络研究中是个新手的新手&#xff0c;使用matlab gui工具能够让我们这些小菜也可以研究这些复杂的问题。 在matlab中输入“nntool”&#xff0c;这样就可以出来gui了哈哈。然后按照提示输入&#xff1a;输入数据&#xff0c;目标数据&#xff0c;网络的设置。自然也…

第九十期:哪种人是软件设计中的稀缺型人才?

好的系统架构离不开好的接口设计&#xff0c;因此&#xff0c;真正懂接口设计的人往往是软件设计队伍中的稀缺型人才。 作者&#xff1a;从码农到工匠 好的系统架构离不开好的接口设计&#xff0c;因此&#xff0c;真正懂接口设计的人往往是软件设计队伍中的稀缺型人才。 为什…

151. Reverse Words in a String

1 题目理解 输入&#xff1a;一个字符串s 规则&#xff1a;一个单词是一串非空字符组成的。单词之间用空格分隔。 输出&#xff1a;将字符串按照单词反转字符串。多余的空格只保留一个。 Example 1: Input: s “the sky is blue” Output: “blue is sky the” Example 2: …

C语言输入字符和字符串

C语言有多个函数可以从键盘获得用户输入&#xff0c;它们分别是&#xff1a; scanf()&#xff1a;和 printf() 类似&#xff0c;scanf() 可以输入多种类型的数据。getchar()、getche()、getch()&#xff1a;这三个函数都用于输入单个字符。gets()&#xff1a;获取一行数据&…

收集一些正则表达式

匹配中文字符的正则表达式&#xff1a; [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内)&#xff1a;[^\x00-\xff] 应用&#xff1a;计算字符串的长度&#xff08;一个双字节字符长度计2&#xff0c;ASCII字符计1&#xff09; String.prototype.lenfunction(){return this.re…

第九十一期:架构设计常用到的10种设计模式,你都知道吗?

企业规模的软件系统该如何设计呢&#xff1f;在开始写代码之前&#xff0c;我们需要选择一个合适的架构&#xff0c;这个架构将决定软件实施过程中的功能属性和质量属性。因此&#xff0c;了解软件设计中的不同架构模式对我们的软件设计会有较大的帮助。 作者&#xff1a;abel_…

8. String to Integer (atoi)

1题目理解 输入&#xff1a;一个字符串s&#xff0c;可能包含空格、正负号、数字&#xff0c;还有其他字符。 输出&#xff1a;将字符串转为int 规则&#xff1a;字符串s一开始可能有很多空格&#xff0c;可以忽略这些空格&#xff0c;直到遇到第一个非空字符。从这个字符开始…

程序编码应保持良好的规范(C#)

呵呵&#xff0c;这个简直是超级老生常谈了。但我还是希望能让更多的程序员能了解一些细节习惯对于程序阅读性的影响。而这个很大程度决定了程序的可移植性。1。变量赋值之间注意保留空格。有些程序员往往不注意。不好的&#xff1a; Body.txtVersion.Textib.Version.ToString(…

第九十二期:多少程序员注意到了「中台」的背面?

中台这个词&#xff0c;最近两年特别火&#xff0c;它的爆发源于2015年张勇在阿里发出的内部信中提到的“大中台&#xff0c;小前台”战略。随后吸引了很多人开始“追逐”它。也有很多人开始借着这概念来挣钱。 作者&#xff1a;跨界架构师 这篇文章比较长&#xff0c;有5200…

框架学习 Spring之依赖注入DI

依赖注入的方式有四种&#xff1a; 1、Setter注入&#xff08;属性注入&#xff09; 2、构造器注入 3、P命名空间注入 4、集合类型值注入 1、Setter注入&#xff08;属性注入&#xff09; Employee 员工实体类 package com.spring.pojo;public class Employee {private Integer…

图:两点之间的最短距离

文章出处&#xff1a;极客时间《数据结构和算法之美》-作者&#xff1a;王争。该系列文章是本人的学习笔记。 1 问题阐述 像 Google 地图、百度地图、高德地图这样的地图软件&#xff0c;如果想从家开车到公司&#xff0c;你只需要输入起始、结束地址&#xff0c;地图就会给你…

spring mvc学习(10):eclipse的环境前maven配置

一.maven的安装 1解压maven压缩包到某一路径下 2配置MAVEN_HOME 3配置path到MAVEN_HOME/bin下 二eclipse集成MAVEN 方法1:直接使用自带插件 1在用户目录/.m2文件夹下面创建setting.xml文件&#xff0c;配置maven仓库位置 2在eclipse中直接配置maven的文件路径 方法2&…

for in / for of 要会用

for in是ES5标准&#xff0c;遍历index ---索引 or key --- 键. 1 for (var index in arr){} // index 0 1 2 3...arr.length-1 1 for (var key in obj){} // key obj里边enumerable的属性&#xff08;可枚举的属性&#xff09; for of是ES6标准&#xff0c;遍历value---每…

04级函授计算机等级考试练习.rar

04级函授计算机等级考试练习.rar 以下是计算机基础的练习资料:函授练习.rar posted on 2005-07-16 21:11 麦子 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs.com/maixf/archive/2005/07/16/194254.html

162. Find Peak Element

文章目录1 题目理解2 线性扫描3 递归二分查找1 题目理解 输入&#xff1a;int[] nums并且 nums[i]!nums[i1] 输出&#xff1a;找到称为峰值的那个数字&#xff0c;返回其下标。 规则&#xff1a;峰值是指&#xff1a;nums[i-1]<nums[i] 并且 nums[i1]<nums[i]。你可以认…

spring mvc学习(11):eclipse的环境maven项目创建前期工作

1创建maven项目 2pom.xml有红色错误&#xff0c;生成web目录 3修改pom.xml配置 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instan…

第二章《蜂群思维》

白痴的选举大厅&#xff0c;由白痴选白痴&#xff0c;其产生的效果却极为惊人。蜂群曾如同日蚀一样神秘、深不可测&#xff0c;他们如同被释放的精灵一样从蜂巢涌出来&#xff0c;并缓缓漂移到另一个新的世界里去。这之中没有绝对的统治者&#xff0c;他们通过侦查员的探测&…