📄 right5_3_2.htm
字号:
<html><head><title>JAVA编程语言</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><link rel="stylesheet" href="../../../css/text.css" type="text/css"></head><body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" ><table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"> <tr> <td valign="top"> <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center" bgcolor="#FFFFFF"> <tr> <td valign="top"> <span class="pt9-black"> </span><span class="zhongdian">4. 下拉式菜单(Choice)<a name="01"></a><br> </span><span class="pt9-black"><br> 下拉式菜单每次只能选择其中的一项,它能够节省显示空间,适用于大量选项。<br> Choice Colorchooser=new Choice();<br> Colorchooser.add("Green");<br> Colorchooser.add("Red");<br> Colorchooser.add("Blue");<br> Choice 用ItemListener接口来进行监听 </span> <p class="pt9-black"> <span class="zhongdian">5. Canvas<a name="02"></a></span><br> <br> 一个应用程序必须继承Canvas类才能获得有用的功能,比如创建一个自定义组件。如果想在画布上完成一些图形处理,则Canvas类中的paint()方法必须被重写。<br> Canvas组件监听各种鼠标,键盘事件。当在Canvas组件中输入字符时,必须先调用requestFocus()方法。</p> <p class="pt9-black"><img src="../../../images/html/liti.gif" width="38" height="38" align="absbottom" title="例题"><span class="pt9-black"><font color="000099">例5.14</font></span><br> import java.awt.*;<br> import java.awt.event.*;<br> import java.util.*;<br> public class MyCanvas implements KeyListener, MouseListener {<br> Canvas c; <font color="339900">//声明一个画布对象</font><br> String s ="";<br> public static void main(String args[]) {<br> Frame f=new Frame("Canvas");<br> MyCanvas mc=new MyCanvas();<br> mc.c=new Canvas();<br> f.add("Center",mc.c);<br> <br> f.setSize(150,150);<br> mc.c.addMouseListener(mc); <font color="339900">//注册监听器</font><br> mc.c.addKeyListener(mc); <font color="339900">//注册监听器</font><br> f.setVisible(true);<br> }</p> <p class="pt9-black"> public void mouseClicked(MouseEvent ev){<br> System.out.println("MouseClicked");<br> c.requestFocus();<font color="339900">//获得焦点,表示该窗口将接收用户的键盘和鼠标输入</font><br> }</p> <p class="pt9-black"> public void keyTyped(KeyEvent ev) {<br> System.out.println("KeyTyped");<br> s+=ev.getKeyChar(); <font color="339900">//获取每个输入的字符,依次添加到字符串s中</font><br> c.getGraphics().drawString(s,0,20); <font color="339900">//显示字符串s</font><br> }<br> <br> public void keyPressed(KeyEvent ev) { System.out.println("KeyPressed"); } <br> public void keyReleased(KeyEvent ev) { System.out.println("KeyReleased"); }<br> public void mousePressed(MouseEvent ev) {System.out.println("MousePressed"); }<br> public void mouseReleased(MouseEvent ev) {System.out.println("MouseReleased"); }<br> public void mouseEntered(MouseEvent ev) {System.out.println("MouseEntered"); }<br> public void mouseExited(MouseEvent ev) {System.out.println("MouseExited"); }<br> }</p> <p><span class="zhongdian"> 6. 单行文本输入区(TextField)<a name="03"></a></span><span class="pt9-black"><br> <br> 只能显示一行,当回车键被按下时,会发生ActionEvent事件,可以通过ActionListener中的actionPerformed()方法对事件进行相应处理。可以使用setEditable(boolean)方法设置为只读属性。<br> <br> 单行文本输入区构造方法如下:<br> TextField tf1,tf2,tf3,tf4:<br> tf1=new TextField(); <br> tf2=new TextField("",20); <font color="339900">//显示区域为20列</font><br> tf3=new TextField("Hello!"); <font color="339900">//按文本区域大小显示</font><br> tf4=new TextField("Hello!",30); <font color="339900">//初始文本为Hello!, 显示区域为30列</font></span></p> </td> </tr> </table> </td> </tr></table></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -