- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java-图形用户界面设计
* 所有的可以显示出来的图形的东西都是Component Java的图形用户界面的最基本组成部分是Component,Component类及其子类的对象,用来描述以图形化的方式显示在屏幕上并能与用户进行交互的GUI元素,如,一个按钮、标签等 一般的Component对象不能独立的显示出来,必须将其“放在”某一Container对象中才可以显示出来。 Container是Component子类,Container子类对象可以“容纳”别的Component对象 Container对象可使用方法add()向其中添加其他Component对象。 Container是Component的子类,因此Container对象也可以被当做Component对象添加到其他Container对象中。 有两种常用的Container: Window:其对象表示自由停泊的顶级窗口 Panel:其对象可作为容纳其他Component对象,但不能独立存在,必须被添加到其他Container中(如Window或Applet) * 在javax.swing包中,定义了两种类型的组件:顶层容器(JFrame,JApplet,JDialog和JWindow)和轻量级组件。Swing组件都是AWT的Container类的直接子类和间接子类。 * 在javax.swing包中,定义了两种类型的组件:顶层容器(JFrame,JApplet,JDialog和JWindow)和轻量级组件。Swing组件都是AWT的Container类的直接子类和间接子类。 * :即“模型-视图-控制” ,其中模型用来保存内容,视图用来显示内容,控制器用来控制用户输入。 * * 第二种定义框架的办法,从Frame继承而来 这时的窗口还不能关闭,CTRL+C可以关闭; setBackground(color); setLayout(null); setBounds(x,y,w,h);左上角坐标X,Y,长宽W,H setVisible(true); 4个方法可以直接调用,原因是MyFrame从Frame继承而来,这几个方法归我所有,可以直接使用;就好比一个子类中调用父类的构造方法使用super(),也不创建对象使用对象.super()。 * * import java.awt.*; public class CenterPanel { public static void main(String args[]) { new MyFrame3(300,300,400,300,Color.BLUE); } } class MyFrame3 extends Frame{ private Panel p; MyFrame3(int x,int y,int w,int h,Color c){ super(FrameWithPanel); setLayout(null); setBounds(x,y,w,h); setBackground(c); p = new Panel(null); p.setBounds(w/4,h/4,w/2,h/2); p.setBackground(Color.YELLOW); add(p); setVisible(true); } } * * BorderLayout 是Window,Frame和Dialog的缺省布局管理器。BorderLayout布局管理器把容器分成5个区域:North,South,East,West和Center,每个区域只能放置一个组件。 在使用BorderLayout的时候,如果容器的大小发生变化,其变化规律为:组件的相对位置不变,大小发生变化。例如容器变高了,则North、South区域不变,West、Center、East区域变高;如果容器变宽了,West、East区域不变,North、Center、South区域变宽。不一定所有的区域都有组件,如果四周的区域(West、East、North、South区域)没有组件,则由Center区域去补充,但是如果Center区域没有组件,则保持空白。 * import java.awt.*; import javax.swing.*; class GridFrame extends JFrame{ public GridFrame(String s){ super(s); setSize(200,200); JButton btn[];
文档评论(0)