- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java GUI基础知识梳理Java GUI包括哪两块技术体系?他们有什么关系?分别有什么特点?AWT在JDK1.0的时候,Java就提供了一套基本的GUI类库给开发者进行GUI开发,这就是AWT。当使用AWT编写图形界面应用时,仅仅是指定了界面组件的位置和行为,并未提供真正的实现,运行时,JVM调用操作系统本地的图形界面来创建和平台一致的对等体,这种模式导致了AWT的一些问题:依赖本地平台,是重量级组件,消耗较大为了实现可移植性,只能构造多个操作系统共有的界面模块,导致提供的功能非常有限,不能使用复杂的界面组件,而且,不同系统有不同的表现,如同一个程序,在windows中运行的界面与在unix中运行的界面不同Swing由于AWT的上述问题,后来官方就开发出一套新的类库,Swing。与AWT不同,Swing是完全使用Java去实现的界面组件,因此,有如下的特点:完全用Java创建界面,速度比AWT稍慢,但对于现在的硬件设备来说,这速度区别不明显是轻量级组件,消耗较小不再依赖平台,Swing提供了大量图形界面组件,功能非常丰富,而且,保证在不同的平台有相同的表现因此,在Java GUI的开发中,通常使用的是Swing的组件(Swing的组件类通常为“J”开头),但AWT的一些核心的实现依然会应用到。GUI界面开发的学习应该掌握哪几块内容?布局组件事件案例:创建第一个GUI界面(1)创建一个窗口(2)在窗口中直接添加一个按钮(3)在窗口中再直接添加一个按钮(4)改动一下,不直接把按钮放在JFrame窗口中,而是放在一个JPanel容器中(JPanel是最常用的中间容器),再把它放到窗口中从第一个例子中我们可以看出:界面的搭建就是把一个一个的控件/容器,通过add的方法,添加到另外一个容器中(窗口也是容器),就像堆积木一样,那么这个add方法是各个容器类共有的方法,因此会在这些容器类的父类/祖先类中上例中为什么直接把两个按钮放到JFrame窗口中与放到JPanel中的效果不同?这就涉及到两个容器的布局问题了Java GUI中提供了哪些常用的布局管理器与特殊的布局容器?分别如何应用?FlowLayout在FlowLayout布局管理器中,组件从左向右一一排列,遇到边界折回下一行再排列,JPanel默认的布局管理器就是FlowLayout,可以指定FlowLayout的对齐方式和间距。原始窗口:拉伸窗口后:如果要重新设置布局管理器:原始窗口:拉伸窗口后:BorderLayoutBorderLayout将容器分为EAST、SOUTH、WEST、NORTH、CENTER五个区域,其它组件可以被放置在容器的指定区域(默认中间),JFrame默认的布局管理器就是BorderLayout。同一个区域只能放一个组件,后者会把前者覆盖,所以一个BorderLayout容器最多只能放5个组件,当某区域没有放置组件时,旁边区域的组件会自动占据该区域,不会出现空白。GridLayoutGridLayout,将容器分割成纵横分割的网格,每个网格所占的区域大小相同,往容器添加组件时,默认从左向右、从上向下依次添加到网格中,且组件大小由网格大小决定,即会占满整个网格区域。注意:当往容器添加的组件数少于或多于网格数时,容器会按所设置的行数固定行数,然后自动调节列数。如设置4行2列,添加3个组件:如设置4行2列,添加10个组件:同样可以设置间距:CardLayout设置CardLayout的容器,里面的组件就像卡片一样全部叠在一起,每次只能看到最顶层的卡片,通过CardLayout提供的方法,可以把“其它卡片叠到顶层并显示”。绝对定位把一个容器设成绝对定位的布局,里面的组件必须定义好位置与大小。Swing特殊容器——BoxBox容器可以使组件在水平或垂直方向上一一排列,水平Box类似于FlowLayout容器,但不会折回下一行。水平Box:垂直Box:Swing特殊容器——JLayeredPaneJLayeredPane是一个层叠容器,它允许容器中的组件层叠起来,但效果与CardLayout容器不同。需要注意的是:JLayeredPane采用的也是绝对定位的布局,里面的组件同样需要定义大小与位置往JLayeredPane中添加组件时,需要指定一个层次关系的参数,通常使用Integer对象(注意不是int,这里用int会有不同的效果),数值越大,越置顶Java GUI中提供了哪些常用的组件?分别如何应用?文字图片单行文本输入框与密码输入框多行文本输入框(文本域)单选框多选框按钮什么是事件?什么是事件绑定?事件——用户操作,如点击某个按钮,文本输入等。Java GUI提供了多个事件类表示各种事件,如WindowEvent表示窗口事件,KeyEvent表示键盘事件,Mou
文档评论(0)