java 选项事件
- 格式:doc
- 大小:316.00 KB
- 文档页数:3
Java标签、按钮和按钮事件简介Java标签、按钮和按钮事件简介标签和按钮也许是图形界面中最常见的两种组件,按钮又总是与激发动作事件有关。
标签标签(JLabel)是最简单的Swing组件。
标签对象的作用是对位于其后的界面组件作说明。
可以设置标签的属性,即前景色,背景色、字体等,但不能动态地编辑标签中的文本。
程序关于标签的基本内容有以下几个方面:1.声明一个标签名;2.创建一个标签对象;3.将标签对象加入到某个容器。
JLabel类的主要构造方法是:1.JLabel ():构造一个无显示文字的标签;2.JLabel (String s):构造一个显示文字为s的标签;3.JLabel(String s, int align):构造一个显示文字为s的标签。
align为显示文字的水平方式,对齐方式有三种:左对齐:JLabel.LEFT中心对齐:JLabel.CENTER右对齐:JLabel.RIGHTJLabel类的其他常用方法是:1.setText(String s):设置标签显示文字;2.getText():获取标签显示文字;3.setBackground(Color c):设置标签的背景颜色,默认背景颜色是容器的背景颜色;4.setForeground(Color c):设置标签上的文字的颜色,默认颜色是黑色。
按钮按钮(JButton)在界面设计中用于激发动作事件。
按钮可显示文本,当按钮被激活时,能激发动作事件。
JButton常用构造方法有:1.JButton():创建一个没有标题的按钮对象;2.JButton(String s):创建一个标题为s的按钮对象。
JButton类的其他常用方法有:1.setLabel(String s):设置按钮的标题文字。
2.getLabel():获取按钮的标题文字。
3.setMnemonic(char mnemonic):设置热键4.setToolTipText(String s):设置提示文字。
JAVA常用方法事件大全JAVA是一种面向对象的编程语言,它提供了众多常用方法和事件来满足程序开发的需求。
下面是JAVA常用方法和事件的详细介绍:1. equals(Object obj)方法:用于比较两个对象是否相等。
默认情况下,它比较的是两个对象的引用是否相等,可以根据需要重写该方法,来比较对象的内容是否相等。
2. hashCode(方法:返回对象的哈希码值。
哈希码是一个整数值,用于快速确定对象在哈希表中的位置。
3. toString(方法:返回对象的字符串表示。
默认情况下,它返回的是对象的类名和对象的哈希码值。
4. getClass(方法:返回对象的运行时类。
运行时类是指对象所属的实际类,而不是对象的引用类型。
5. clone(方法:用于创建并返回对象的副本。
该方法是浅拷贝,即只复制对象的引用,而不复制对象本身。
6. finalize(方法:用于在对象被垃圾回收器回收之前执行一些清理工作。
该方法在对象被销毁之前调用。
7. wait(方法:使线程进入等待状态,直到另一个线程通知它被唤醒。
该方法用于线程之间的通信。
8. notify(和notifyAll(方法:用于唤醒一个或多个正在等待的线程。
这些线程在调用wait(方法后被阻塞。
9. get(和set(方法:用于访问对象的属性。
get(方法用于获取属性的值,set(方法用于设置属性的值。
10. Math类:提供了一些常用的数学方法,如绝对值、四舍五入、最大值、最小值等。
11. String类:提供了一系列字符串操作的方法,如连接字符串、查找子串、替换字符等。
12. StringBuffer和StringBuilder类:用于处理可变的字符串。
它们提供了一些方法进行字符串的添加、删除、插入和替换。
13. ArrayList类:动态数组,可以存储任意类型的对象。
它提供了一些方法进行元素的增加、删除、修改和查询。
14. HashMap类:哈希表,用于存储键值对。
一、介绍Java中TextField控件在Java编程中,TextField是一个常用的用户界面控件,用于接收用户输入的文本数据。
它通常用于表单、登录页面、搜索框等场景中,是与用户进行交互的重要组成部分。
二、TextField中清空内容的方法在实际的开发中,经常会遇到需要清空TextField中内容的情况,下面将介绍几种常用的方法。
1. 使用setText方法通过调用TextField的setText方法,可以将其内容设置为空字符串,从而实现清空的效果。
示例代码如下:```javatextField.setText("");```这样就可以清空textField中的内容。
2. 监听键盘事件另一种常见的做法是通过监听键盘事件,在用户按下特定键(如Delete键)时清空TextField中的内容。
示例代码如下:```javatextField.addKeyListener(new KeyAdapter() {Overridepublic void keyPressed(KeyEvent e) {if (e.getKeyCode() == KeyEvent.VK_DELETE) {textField.setText("");}}});```这样,当用户按下Delete键时,TextField中的内容就会被清空。
3. 使用DocumentListener还可以通过监听Document的变化,在用户输入内容后立即清空TextField中的内容。
示例代码如下:```javatextField.getDocument().addDocumentListener(new DocumentListener() {Overridepublic void removeUpdate(DocumentEvent e) {textField.setText("");}Overridepublic void insertUpdate(DocumentEvent e) {textField.setText("");}Overridepublic void changedUpdate(DocumentEvent e) {textField.setText("");}});```这样,无论用户是删除已有内容还是输入新内容,TextField中的内容都会被立即清空。
在Java1.0中,已经有一个用于GUI编程的类库AWT(Abstract Window Toolkit),称之为抽象窗口工具箱。
遗憾的是,AWT中的组件(例如按钮,类名为Button)在实现中使用了本地代码(Native Code),这些组件的创建和行为是由应用程序所在平台上的本地GUI工具来处理的。
因此,AWT组件要在不同的平台上提供给用户一致的行为就受到了很大的限制。
同时,AWT组件中还存在很多bug,这就使得使用AWT来开发跨平台的GUI应用程序困难重重。
1996年,SUN公司和Netsacpe公司在一个称为Swing的项目中合作完善了Netsacpe公司原来开发的一套GUI库,也就是现在所谓的Swing组件。
Swing组件和原来的AWT组件完全不同,最大的区别就是Swing组件的实现中没有使用本地代码,这样对底层平台的依赖型就大为降低,并且可以给不同平台的用户一致的感觉。
此外,和原来的AWT相比,Swing 中提供了内容更多、使用更为方便的组件。
在阅读一些书籍时,常会遇到名词JFC(Java Foundation Class)。
JFC的概念是在1997年的JavaOne开发者大会上首次提出的,是指用于构建GUI的一组API。
实际上,Swing只是JFC的一部分,其它的还有二维图形(Java 2D)API以及拖放(Drag and Drop)API等等。
Swing并不是完全取代了AWT,Swing只是使用更好的GUI组件(如JButton)代替AWT 中相应的GUI组件(如Button),并且增加了一些AWT中原来所没有的GUI组件。
并且,Swing 仍使用AWT 1.1的事件处理模型。
虽然现在AWT组件仍得到支持,但是建议在你的应用程序中尽量使用Swing组件和1.1的事件模型。
1.标签(JLabel)标签(JLabel)通常是用来标识另外一个组件的含义。
以在标签上显示文字、图象或是文字图象的组合。
Java常用方法大全字符串1、获取字符串的长度length()2 、判断字符串的前缀或后缀与已知字符串是否相同前缀startsWith(String s)后缀endsWith(String s)3、比较两个字符串equals(String s)4、把字符串转化为相应的数值int型Integer.parseInt(字符串)long型Long.parseLong(字符串)float型Folat.valueOf(字符串).floatValue()double型Double.valueOf(字符串).doubleValue()4、将数值转化为字符串valueOf(数值)5、字符串检索indexOf(Srting s) 从头开始检索indexOf(String s ,int startpoint) 从startpoint处开始检索如果没有检索到,将返回-16、得到字符串的子字符串substring(int startpoint) 从startpoint处开始获取substring(int start,int end) 从start到end中间的字符7、替换字符串中的字符,去掉字符串前后空格replace(char old,char new) 用new替换oldtrim()8、分析字符串StringTokenizer(String s) 构造一个分析器,使用默认分隔字符(空格,换行,回车,Tab,进纸符)StringTokenizer(String s,String delim) delim是自己定义的分隔符nextToken() 逐个获取字符串中的语言符号boolean hasMoreTokens() 只要字符串还有语言符号将返回true,否则返回false countTokens() 得到一共有多少个语言符号文本框和文本区1、文本框TextField() 构造文本框,一个字符长TextField(int x) 构造文本框,x个字符长TextField(String s) 构造文本框,显示ssetText(String s) 设置文本为sgetText() 获取文本setEchoChar(char c) 设置显示字符为csetEditable(boolean) 设置文本框是否可以被修改addActionListener() 添加监视器removeActionListener() 移去监视器2、文本区TextArea() 构造文本区TextArea(String s) 构造文本区,显示sTextArea(String s,int x,int y) 构造文本区,x行,y列,显示s TextArea(int x,int y) 构造文本区,x行,y列TextArea(String s,int x,ing y,int scrollbar)scrollbar的值是:TextArea.SCROLLBARS_BOTHTextArea.SCROLLBARS_VERTICAL_ONL YTextArea.SCROLLBARS_HORIZONTAL_ONL Y TextArea.SCROLLBARS_NONEsetText(String s) 设置文本为sgetText() 获取文本addTextListener() 添加监视器removeTextListener() 移去监视器insert(String s,int x) 在x处插入文本sreplaceRange(String s,int x,int y) 用s替换从x到y处的文本append(String s) 在文本的最后追加文本sInt getCaretPosition(int n) 获取文本区中光标的位置按钮1、按钮Button() 构造按钮Button(String s) 构造按钮,标签是ssetLabel(String s) 设置按钮标签是sgetLabel() 获取按钮标签addActionListener() 添加监视器removeActionListener() 移去监视器标签1、标签Label() 构造标签Label(String s) 构造标签,显示sLabel(String s,int x)x是对齐方式,取值:Label.LEFTLabel.RIGHTLabel.CENTERsetText(String s) 设置文本sgetText() 获取文本setBackground(Color c) 设置标签背景颜色setForeground(Color c) 设置字体颜色选择框1、选择框Checkbox() 构造选择框Checkbox(String s) 构造选择框,给定标题sCheckbox(String s,boolean b) b设定初始状态Checkbox(String s,boolean b,CheckboxGroup g) g设定了所属的组(有了组就成为单选框)addItemListener() 添加监视器removeItemListener() 移去监视器getState() 返回选择框的是否选中状态setState(boolean b) 设置选择框的状态getLabel() 获取选择框的标题setLabel(String s) 设置选择框的标题为s选择控件和滚动列表1、选择控件Choice() 构造选择控件add(String s) 向选择控件增加一个选项addItemListener() 添加监视器removeItemListener() 移去监视器getSelectedIndex() 返回当前选项的索引getSelectedItem() 返回当前选项的字符串代表insert(String s,int n) 在n处插入选项sremove(int n)removeAll()2、滚动列表List() 构造滚动列表List(int n) 参数n是可见行数List(int n,boolean b) 参数b是设置是否可以多项选择add(String s) 向列表的结尾增加一个选项add(String s,int n) 在n处增加一个选项AddActionListener() 滚动列表添加监视器addItemListener() 滚动列表上的选项添加监视器remove(int n) 删除n初的选项remnoveAll() 删除全部选项getSelectedIndex() 返回当前选项的索引getSelectedItem() 返回当前选项的字符串代表3、组件类的一些常用方法void setBackground(Color c) 设置组件背景颜色void setForeground(Color c) 设置组件前景颜色void setFonts(Font f) 设置组件字体void setBounds(int x,int y,int w,int h) 设置坐标,x,y表示在容器中坐标,w,h表示宽和高void setLocation(int x,int y) 移动到x,y 处void setSize(int w,int h) 设置宽和高void setVisible(boolean b) 设置组建是否可见int getBounds().wigth 获取宽int getBounds().height 获取高int getBounds().x 获取x 坐标int getBounds().y 获取y 坐标Toolkit getToolkit() 获取工具包对void setEnabled(boolean b) 设置是否可以使用(默认可以)窗口和菜单1、窗口Frame() 构造窗口Frame(String s) 窗口标题是ssetBounds(int x,int y,int w,int h) 窗口位置x,y,宽w,高ysetSize(int w,int h) 设置窗口位置(单位是像素)setBackground(Color c) 设置背景颜色setVisible(boolean b) 设置窗口是否可见pack() 窗口出现时紧凑setTitle(String s) 设置标题为sgetTitle() 获取标题setResizable(boolean b) 设置窗口大小是否可以调整2、菜单条Menubar() 构造菜单条setMenubar() 窗口添加菜单条3、菜单Menu() 构造菜单Menu(String s) 构造菜单,标题saddadd(MenuItem item) 菜单增加菜单选项itemadd(String s) 向菜单增加选项sgetItem(int n) 获取n处的选项getItemCount() 获取选项数目insert(MenuItem item,int n) 在n处插入菜单选项iteminsert(String s,int n) 在n处插入菜单选项remove(int n) 删除菜单的n处的菜单选项removeAll() 删除全部4、菜单项MenuItem() 构造菜单项MenuItem(String s) 构造标题是s的菜单项setEnabled(boolean b) 设置是否可以被选择getLabel() 得到菜单选项名addActionListener() 添加监视器5、有关菜单的技巧addSeparator() 增加菜单分割线CheckboxMenuItem() 复选框菜单项setShortcut(MenuShortcut k) 设置快捷键(k取值KeyEvent.VK_A----KeyEvent.VK_Z)建立对话框1、Dialog类Dialog(Frame f,String s) 构造对话框,初始不可见,s是标题,f是对话框所依赖的窗口Dialog(Frame f,String s,boolean b) b设置初始是否可见getTitle() 获取对话框标题setTitle(String s) 设置对话框标题setModal(boolean b) 设置对话框模式setSize(int w,int h) 设置对话框大小setVisible(boolean b) 显示或隐藏对话框2、FileDialog类Filedialog(Frame f,String s,int mode) mode的值是fileDialog.LOAD或者fileDialog.SAVE public String getDirectory() 获取当前文件对话框中显示的文件所属目录public String getFile() 获取当前文件对话框中文件的字符串表示,不存在返回nullJava中的鼠标和键盘事件1、使用MouseListener借口处理鼠标事件鼠标事件有5种:按下鼠标键,释放鼠标键,点击鼠标键,鼠标进入和鼠标退出鼠标事件类型是MouseEvent,主要方法有:getX(),getY() 获取鼠标位置getModifiers() 获取鼠标左键或者右键getClickCount() 获取鼠标被点击的次数getSource() 获取鼠标发生的事件源事件源获得监视器的方法是addMouseListener(),移去监视器的方法是removeMouseListener() 处理事件源发生的时间的事件的接口是MouseListener 接口中有如下的方法mousePressed(MouseEvent) 负责处理鼠标按下事件mouseReleased(MouseEvent) 负责处理鼠标释放事件mouseEntered(MouseEvent) 负责处理鼠标进入容器事件mouseExited(MouseEvent) 负责处理鼠标离开事件mouseClicked(MouseEvent) 负责处理点击事件2、使用MouseMotionListener接口处理鼠标事件事件源发生的鼠标事件有2种:拖动鼠标和鼠标移动鼠标事件的类型是MouseEvent事件源获得监视器的方法是addMouseMotionListener()处理事件源发生的事件的接口是MouseMotionListener 接口中有如下的方法mouseDragged() 负责处理鼠标拖动事件mouseMoved() 负责处理鼠标移动事件3、控制鼠标的指针形状setCursor(Cursor.getPreddfinedCursor(Cursor.鼠标形状定义)) 鼠标形状定义见(书P 210)4、键盘事件键盘事件源使用addKeyListener 方法获得监视器键盘事件的接口是KeyListener 接口中有3个方法public void keyPressed(KeyEvent e) 按下键盘按键public void keyReleased(KeyEvent e) 释放键盘按键public void keyTypde(KeyEvent e) 按下又释放键盘按键Java多线程机制1、Java的线程类与Runnable接口Thread类public Thread() 创建线程对象public Thread(Runnable target) target 称为被创建线程的目标对象,负责实现Runnable接口线程优先级Thread类有三个有关线程优先级的静态常量:MIN_PRIORITY,MAX_PRIORITY,NORM_PRIORITY新建线程将继承创建它的副相承的优先级,用户可以调用Thread类的setPriority(int a)来修改a的取值:Thread.MIN_PRIORITY,Thread.MAX_PRIORITY,Thread.NORM_PRIORITY主要方法启动线程start()定义线程操作run()使线程休眠sleep()sleep(int millsecond) 以毫秒为单位的休眠时间sleep(int millsecond,int nanosecond) 以纳秒为单位的休眠时间currentThread() 判断谁在占用CPU的线程第二十章输入输出流1、FileInputStream类FileInputStream(String name) 使用给定的文件名name创建一个FileInputStream对象FileInputStream(File file) 使用File对象创建FileInpuStream对象File类有两个常用方法:File(String s) s确定文件名字File(String directory,String s) directory是文件目录例如:File f=new File("Myfile.dat");FileInputStream istream=new FileInputStream(f);处理I/O异常当出现I/O错误的时候,Java生成一个IOException(I/O异常)对象来表示这个错误的信号。
java 单击事件ActionEvent单击事件是Java GUI中比较常见的事件之一,是高级事件。
单击按钮、单选按钮和菜单项等都会触发相应的ActionEvent事件。
在下拉菜单中,单击某一个菜单项时,会执行相关操作。
其实质上是使用菜单项的单击事件,即ActionEvent事件。
当单击上面菜单项事件源时,会触发Actio nEvent事件,即ActionEvent类创建一个实例化对象。
通过ActionEvent类的getActionCommand()方法,可以获取触发事件的事件源名称。
一个类如果要成为ActionEvent事件的监听器,必须要继承ActionListener接口。
ActionListener接口具有一个名称为actionPerformed(ActionEvent e)的方法。
下面创建一个案例,来说明单击事件的使用。
代码如下所示。
单项itemNative、itemMotif、itemMetal和itemColor。
在下面分别为四个菜单项添加相应的事件,代码“itemNative.addActionListener(new ActionListener(){}”表示为it emNative添加了一个ActionEvent事件的匿名类,在实现的方法actionPerformed()中,设置要实现操作的代码。
其他菜单项依此类推。
执行上述代码,会显示初始化窗口。
单击【窗口风格】菜单,会显示【系统平台风格】、【Motif风格】和【跨平台风格】三个菜单项。
单击【Motif风格】、【系统平台风格】或【跨平台风格】菜单项,会改变窗体的风格,如图10-12所示。
单击【改变颜色】|【选择颜色】菜单项,弹出颜色选择框,选择颜色并单击【确定】按钮,改变窗体的颜色,如图10-13所示。
图10-12 窗口风格图10-13 选择颜色。