2022年雪蒂斯冰淇淋防骗子,雪蒂斯打击骗子的恶意诋毁之图形界面编程技术手册 .pdf
《2022年雪蒂斯冰淇淋防骗子,雪蒂斯打击骗子的恶意诋毁之图形界面编程技术手册 .pdf》由会员分享,可在线阅读,更多相关《2022年雪蒂斯冰淇淋防骗子,雪蒂斯打击骗子的恶意诋毁之图形界面编程技术手册 .pdf(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、广州腾科网络技术有限公司Java教学部朱德宝图形界面编程技术手册编写: Kende_zhu 1. GUI 的历史图形用户界面( Graphical User Interface,简称 GUI,又称图形用户接口)即人机交互图形化用户界面设计。2. 何为 GUI 我们可以借助画画来理解GUI 编程(1) GUI 编程: Applet、AWT、Swing Applet:是一种 Java程序,它一般运行在支持Java的 Web浏览器内。运行applet所需的大多数图形支持能力都内置于浏览器中。(现在已有被 flash 等取代的趋势,很少使用了。 )AWT:抽象窗口工具包(Abstract Window
2、 Toolkit , AWT) ,其作用是给用户提供基本的界面构件,这一类实现的是application 的应用程序,由于缺陷很多,有被使用 Swing 类取代的趋势。Swing: 是一个用于开发Java应用程序用户界面的 开发工具包 。使用 Swing类的编程,这是目今倾向使用的application 编成的方法。是对继承AWT 类编程的一个改进。优势:1、丰富的组件类型;2、丰富的组件特性;3、好的组件 API 模型支持: Swing 遵循 MVC 模式;4、可扩展和灵活性;5、标准的 GUI 库。(2) Swing 基本容器: JFrame 首先画画前需要有个画框或者画板, GUI 中需
3、要你先创建一个最基本的界面容器: JFrame (3) 基本组件好了,有了画板,就可以开始画画了,在哪画?当然是在画板中。所以在GUI 中,你可以在容器中,通过添加组件的方式,开始绘制界面。我们来了解两个最基本的组件:a) 标签组件b) 按钮组件(4) 布局管理器GUI 中通过布局管理器,来帮助实现图形界面的布局a) FlowLayout 布局管理器b) BorderLayout 布局管理器c) GridLayout 布局管理器d) CardLayout 布局管理器e) 绝对定位(5) 事件处理机制名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
4、 - - - - 名师精心整理 - - - - - - - 第 1 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝第一节基本容器 JFrame 1、第一个 JFrame 窗体程序publicclass JFrameDemo publicstaticvoid main(String args) JFrame jf = new JFrame( 这是我的第一个swing窗体 ); Dimension d = new Dimension(300, 200); jf.setSize(d); Point p = new Point(500, 400);
5、jf.setLocation(p); jf.setVisible( true); 第二节标签组件 JLabel 1、定义标签对象publicclass JLabelDemo publicstaticvoid main(String args) JFrame jf = new JFrame( 这是我的第一个swing窗体 ); JLabel lab = new JLabel(KENDE , JLabel.CENTER); /实例化标签对象jf.add(lab);/将Label组件添加到 JFrame 面板中Dimension d = new Dimension(300, 200); jf.set
6、Size(d); Point p = new Point(500, 400); jf.setLocation(p); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝jf.setVisible(true); 2、定义标签字体标签可以设置字体,包括什么字体,字体的颜色,大小,是否斜体等publicclass JLabelDemo2 publicstaticvoid main(Strin
7、g args) JFrame jf = new JFrame( 这是我的第一个swing窗体 ); JLabel lab = new JLabel(KENDE , JLabel.CENTER); /实例化标签对象Font font = new Font(Dialog, Font.ITALIC + Font.BOLD, 30); lab.setFont(font); jf.add(lab);/将组件添加到面板中Dimension d = new Dimension(300, 200); jf.setSize(d); Point p = new Point(500, 400); jf.setLoc
8、ation(p); jf.setVisible(true); 3、得到本机中所有的字体publicclass GetAllFonts publicstaticvoid main(String args) GraphicsEnvironment g = GraphicsEnvironment . getLocalGraphicsEnvironment(); String fonts = g.getAvailableFontFamilyNames(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -
9、 - - 第 3 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝for (String name: fonts) System.out .println(name); 4、在 Label 中设置显示的图片publicclass JLabelDemo3 publicstaticvoid main(String args) JFrame jf = new JFrame( 这是我的第一个swing窗体 ); Icon icon = new ImageIcon(野生动物王国.jpg); JLabel lab = new JLabel(KENDE ,
10、icon, JLabel.CENTER); / 实例化标签对象Font font = new Font(Serif, Font.ITALIC + Font.BOLD, 30); lab.setFont(font); jf.add(lab);/ 将组件添加到面板中Dimension d = new Dimension(300, 200); jf.setSize(d); Point p = new Point(500, 400); jf.setLocation(p); jf.setVisible(true); 第三节按钮组件 JButton 1、在 JFrame 中增加按钮名师资料总结 - - -
11、精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝publicclass JButtonDemo01 publicstaticvoid main(String args) JFrame frame = new JFrame(Welcome to Kendes home! ); JButton bt = new JButton( 按钮 ); frame.add(bt); frame.setSize(300,20
12、0); frame.setLocation(400, 300); frame.setVisible(true); 2、往 JButton 中添加图片publicclass JButtonDemo02 publicstaticvoid main(String args) JFrame frame = new JFrame(Welcome to Kendes home! ); String picPath = E:picBackGrouda.jpg; Icon icon = new ImageIcon(picPath); JButton bt = new JButton(icon); frame.
13、add(bt); frame.setSize(800,500); frame.setLocation(400, 300); frame.setVisible(true); 第四节布局管理器1、FlowLayout 布局管理器FlowLayout 属于流式布局管理器,使用此种布局方式,所有的组件会像流水一样依次排列。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝publicclass
14、 FlowLayoutDemo01 publicstaticvoid main(String args) JFrame frame = new JFrame(Welcome to kendes home); frame.setLayout( new FlowLayout(FlowLayout.CENTER, 20 , 20 ); JButton button = null; for( int i = 0; i 9; i +) button = new JButton( 按钮 - + i); frame.add(button); frame.setSize(800,500); frame.set
15、Location(400, 300); frame.setVisible(true); 效果图:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝2、BorderLayout 布局管理器BorderLayout 将一个窗体的版面划成东,西,南,北,中五个区域,可以直接将需要的组件放到五个区域即可publicclass BorderLayoutDemo01 publicstaticvoi
16、d main(String args) JFrame frame = new JFrame(Welcome to kendes home); frame.setLayout( new BorderLayout(20, 20); frame.add(new JButton( 东 ), BorderLayout.EAST); frame.add(new JButton( 西 ), BorderLayout.WEST ); frame.add(new JButton( 南 ), BorderLayout.SOUTH); frame.add(new JButton( 北 ), BorderLayout
17、.NORTH ); frame.add(new JButton( 中 ), BorderLayout.CENTER); frame.setSize(500,300); frame.setLocation(400, 300); frame.setVisible(true); 3、GridLayout 布局管理器GridLayout 布局管理器是以表格的形式进行管理的,在使用此布局管理器的时候必须设置显示的行数和列数。publicclass GridLayoutDemo01 publicstaticvoid main(String args) JFrame frame = new JFrame(W
18、elcome to kendes home); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝frame.setLayout(new GridLayout(3, 5, 3, 3); JButton button = null; for( int i = 0; i 13; i +) button = new JButton( 按钮 - + i); frame.add(button);
19、 frame.setSize(500,300); frame.setLocation(400, 300); frame.setVisible(true); 效果图:4、CardLayout 布局管理器CardLayout 就是将一组组件彼此重叠的进行布局,就像一张张卡片一样,这样每次只会展现一个界面publicclass CardLayoutDemo01 publicstaticvoid main(String args) JFrame frame = new JFrame(Welcome to kendes home); CardLayout card = new CardLayout();
20、 frame.setLayout(card); Container con = frame.getContentPane(); con.add ( new JLabel( 标签 -A , JLabel.CENTER), first); con.add(new JLabel( 标签 -B , JLabel.CENTER), second); con.add(new JLabel( 标签 -C , JLabel.CENTER), third); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -
21、 第 8 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝con.add(new JLabel( 标签 -D , JLabel.CENTER), fourth); con.add(new JLabel( 标签 -E , JLabel.CENTER), fifth); frame.pack(); frame.setVisible(true); card.show(con, third); for ( int i = 0; i 窗口被选中 ) ; public void windowClosed (WindowEvent e) System.out
22、.println(windowClosed - 窗口被关闭 ) ; public void windowClosing (WindowEvent e) System.out.println(windowClosing - 窗口关闭 ) ; System.exit(1) ; public void windowDeactivated (WindowEvent e) System.out.println(windowDeactivated - 取消窗口选中 ) ; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
23、 - - - - - 第 14 页,共 24 页 - - - - - - - - - 广州腾科网络技术有限公司Java教学部朱德宝public void windowDeiconified (WindowEvent e) System.out.println(windowDeiconified - 窗口从最小化恢复) ; public void windowIconified (WindowEvent e) System.out.println(windowIconified - 窗口最小化 ) ; public void windowOpened (WindowEvent e) System
24、.out.println(windowOpened - 窗口被打开 ) ; ; public class MyEventWindowEventJFrame01 public static void main(String args) JFrame frame = new JFrame(Welcome To kendes home) ; frame.addWindowListener(new MyWindowEventHandle() ; / 加入事件frame.setSize(300,150) ; frame.setBackground(Color.WHITE) ; frame.setLoca
25、tion(300,200) ; frame.setVisible(true) ; 注意:发现以上程序虽然实现了窗口关闭,但是没有必要实现那么多的方法,可以如何做呢,其实在事件中提供了很多的适配器class MyWindowEventHandle2 extends WindowAdapter public void windowClosing(WindowEvent e) System.out.println(windowClosing - 窗口关闭 ) ; System.exit(1) ; ; public class MyEventWindowEventJFrame02 public sta
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年雪蒂斯冰淇淋防骗子 雪蒂斯打击骗子的恶意诋毁之图形界面编程技术手册 2022 年雪蒂斯 冰淇淋 骗子 雪蒂斯 打击 恶意 诋毁 图形界面 编程 技术 手册
限制150内