swing的小知识点_第1页
swing的小知识点_第2页
swing的小知识点_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、? 从JFrame类的超类中继承下来的常用的方法(用于处理框架大小和位置 ):dispose。:关闭窗口,并回收创建程序所使用的全部系统资源。(继承Window类)setlconlmage(image):将窗口极小化时的图标设置为Image对象(在Java中,通常称之为图标化)setTitle(String):改变标题栏中的文本。(继承Frame类)setReSizable(boolean):利用一个 boolean值确定框架大小是否允许用户改变。(继承Frame 类)? void setDefaultCloseOperatio n(i nt operati on)定义用户关闭框架时的响应动作

2、参数可取的值为:DO_NOTHING_ON_CLOSE:不执行任何动作HIDE_ON_CLOSE:隐藏框架,不退出程序DISPOSE_ON_CLOSE :自动隐藏和关闭框架EXIT_ON_CLOSE :退出程序? void setLocatio n(i nt x, i nt y) JDK1.1? void setLocati on (Poi nt p) JDK1.1? 将组件移到一个新的位置。如果该组件是顶层组件(例如JFrame),x和y是屏幕坐标;如果不是,则 x和y是容器坐标。? void setSize(int width, int height) JDK1.1void setSize

3、(Dime nsion d) JDK1.1 :? 使用给定的宽度和高度,重置组件的大小。? void setResizable(boolean b):? 决定用户是否可以重置框架的大小。? 在Java中,框架被设计为放置组件的容器,可以将菜单栏和其它用户界面元素放 置在其中。? Java1.5版本则可以直接使用 Jframe的add(Component c)方法来在框架中添加组件 (使得用户不必关心 Jframe的结构)? 通常情况下,应该在一个称为面板(panel)的组件上绘制信息,并将这个面板添加在框架中。? Swing包中面板采用JPanel类实现,具有两个特性:?1.包含一个用于绘图的

4、表面?2.本身也是一个容器,因此还可以放置如按钮之类的用户组件。在事件处理的过程中,主要涉及三类对象:? 事件(Event):用户对界面的操作在Java语言上的描述,以类的形式出现,例如,键盘操作对应的事件类是KeyEve nt。? 事件源(Event Source):事件发生的场所,通常就是各个组件,例如,按钮 Button。? 事件处理器(监听器)(Event Handler):接收事件对象并对其进行处理的对 象。事件源(Butt on )产生事件传递给事件监听器。并可以将任何对象指派给事件监听器以响应事件。?1.监听器对象是一个实现了特定监听器接口(liste ner in terfac

5、e)的类的对象。?2.事件源是一个能够注册监听器对象并发送事件对象的对象。?3.当事件发生时,事件源将事件对象传递给所有注册的监听器对象。?4.监听器对象利用事件对象中的信息决定如何对事件做出响应。AWT事件监听接口AWT事件监听接口Action Eve ntAction Liste nerKeyEve ntKeyListe nerAdjustme ntEve ntAdjustme ntListe nerMouseEve ntMouseListe ner;MouseMoti on Liste nerFocusEventFocusListe nerMouseWheelEve ntMouseWhe

6、elListe nertemEve ntItemListe nerWin dowEve ntWin dowListe ner;Win dowFocusListe ner;Win dowStateListe ner语义事件类的实现包含在包中,最常用的语义事件类有:? Acti on Eve nt :对于按钮点击、菜单选择、选择列表或在文本域中键入后单击ENTER键。? Adjustme ntEve nt :用户调节滚动条。? ItemEve nt :用户从复选框或列表项中选择一项。? TextEvent :文本对象发生改变? 常用的5个低级事件类是:? KeyEve nt : 个键被按下或释放?

7、 MouseEve nt :鼠标键被按下、释放、移动或拖动? MouseWheelEve nt :鼠标滚轮被转动? FocusEve nt :某个组件获得或者失去焦点? Win dowEve nt :窗口状态改变接口方法参数/访问器方法事件源Action Liste neractio npeformedActionEvent.getActio nComma nd().getModifiers()AbstractButt on JComboBox JTextField TimerAdjustme ntListe neradjustme ntvaluecha ngedAdjustme ntEve

8、nt .getAdjustable() .getAdjustme ntType() .getValue()JScrollbartemListe nertemstatecha ngedItemEve nt .getItem() .getItemSelectable() .getStateCha nge()AbstractButt onJComboBox接口方法参数/访问器方法事件源FocusListe ner:ocusga ined bcuslostFocusEvent .isTemporary()Comp onentKeyListe nerkeypressed keyreleased keyt

9、ypedKeyEve nt .getKeyChar() .getKeyCode() getKeyModifiersText() .getKeyText().isActio nKey()Comp onentMouseListe nermousepressed mousereleased mousee ntered mouseexited mouseclickedMouseEve nt .getClickCou nt() .getX() .getY() .getPoi nt()Comp onent接口方法参数/访问器方法事件源MouseMoti on Liste nermousedragged m

10、ousemovedMouseEve nt.(访问器同上)Comp onentMouseWheelListe nermousewheelmovedMouseWheelEve nt.getWheelRotatio n().getScrollAmou nt()Comp onentWin dowListe nerwi ndowClosi ng win dowOpe ned win dowIc oni fied win dowDeic oni fied win dowClosed win dowActivated win dowDeactivatedWin dowEve nt.getWi ndow()W

11、in dow接口方法参数/访问器方法事件源MouseMoti on Liste nermousedragged mousemovedMouseEve nt.(访问器同上)Comp onentMouseWheelListe nermousewheelmovedMouseWheelEve nt .getWheelRotatio n() .getScrollAmou nt()Comp onentWin dowListe nerwi ndowClosi ngwin dowOpe nedwin dowIc oni fiedwin dowDeic oni fiedwin dowClosedwin dowA

12、ctivatedwin dowDeactivatedWin dowEve nt.getWi ndow()Win dowJTextField :接收单行文本输入。JTextArea : 接收多行文本输入。JPasswordField :特殊的文本域,用户的输入不直接显示出来,而用其它字符代替, 常用于输入密码。(自学)?文本域的使用方法:? JPa nel panel = new JPa nel();? JTextField textField = new JTextField("Default in put", 20);? pan el.add(textField);?第一

13、个参数 “ Default in put :将文本域的缺省显示值为Default in put?第二个参数20 :列数,是指文本域显示的宽度为20列(并非可以输入的字符的个数)。文本区( JTextArea )? 文本区 JTextArea 组件可以让用户输入多行文本。在 JTextArea 组件中,可以指定 文本区的行数和列数:? textArea = new JTextArea(8, 40);/ 8 行 40 列? 可以使用换行来避免行过长:? textArea.setLineWrap(true);? 在 Swing 中,文本区没有滚动条,需要手动安装:? JScrollPane scro

14、llPane = new JScrollPane(textArea)void append(String newText) 将给定文本附加到文本区中已有文本的后面void setText(String t) 用新文本改变文本组件中的文本String getText() 返回文本组件中的文本void setEditable(boolean b) 确定用户是否可以编辑 JTextComponent 中的内容? 用户点击菜单项的动作监听器为实现 ActionListener 接口( actionPerformed 方法) 的类对象或关联一个动作事件:? ActionListener listener

15、 = . . . ;? pasteItem.addActionListener(listener);或将一个动作直接与菜单项关联ActionListener pasteAction = ;JMenuItem cutItem=new JMenuItem(cutAction); editMenu.add(pasteAction) ;? 弹出菜单 (pop-up menu) :即单击鼠标右键可弹出的快捷菜单。? 建立弹出菜单的方法与一般菜单相似:(1) 创建一个弹出式菜单JPopupMenu popup = new JPopupMenu();(2) 在菜单中添加菜单项:? JMenuItem item = new JMenuItem("Cut");? item.addActionListener(lis

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论