zoukankan      html  css  js  c++  java
  • JavaSE高级之GUI编程

     下面主要用到了java中的swing进行界面设计,当然java的GUI不如C#的设计的好看,不过原理还是要会的。

    1. GUI Graphical User Interface 用户图形界面

        a) 主要包括菜单栏,窗口,工具条,按钮等;

        b) Java提供了两个GUI开发的包 java.awt 和 java.swing, java.awt中的Component抽象类是javaGUI中所有类的父类。它规定了所有GUI组件的的的基本特性 j        ava.swing 是在java.awt 的基础上构建起来的,引入了许多新的功能和新的特性

        c) GUI组件

            i. 基本组件:在其控件中不能容纳其他组件,如按钮,文本框等

            ii. 容器:可以在其上面添加其他组件,如窗口,对话框等;

    2. Swing容器和组件

        a) 创建顶层容器(窗口的实现)------类JFrame的使用

            i. 实例:JFrame frame = new JFrame(String title);

            ii. setLocation(int x, int y) 设置窗体的显示位置

            iii. setSize(int width, int height) 设置窗体的大小

            iv. setVisible(Boolean b)  设置窗体是否可见

            v. 获得内容面板:Container con=fram.getContentPane();在内容面板上添加组件

        b) 基本组件分类

            i. 文本输入组件: JTextField---文本框  JPasswordField---密码框   JTextArea---文本域  JLabel---标签

            ii. 按钮组件:JButton---普通按钮  JCheckBox---复选框  JRadioButton—单选框  JComboBox –下拉列表框

        c) JTextField中常用方法

            i. 实例化: JTextField text = new JTextField(int columns);

            ii. Public String getText() 获取文本框的内容

            iii. Public void setTest(String text)设置文本框的内容

        d) JTextArea 中长用方法4

            i. 实例化: JTextArea area = new JTextArea(int rows, int columns);

            ii. Public String getText() 获取文本域内容

            iii. Public void setText(String Text) 设置文本域中的内容

            iv. Public void append(String Text)追加内容

    复制代码
                //添加文本域
    
                  JTextArea area = new JTextArea(10,20);
    
                //设置文本域文字
    
                  area.setText("adfa");
    
                  //追加内容
    
                  area.append("1345");
    
                  area.append("543254");
    复制代码

            v.       con.add(area);

        e) JCheckBox 复选框

            i. 实例化:JCheckBox check = new JCheckBox(String title,Boolean selected);

    1             //添加复选框
    2 
    3               JCheckBox check = new JCheckBox("男",true);
    4 
    5               con.add(check);   

            ii.       con.add(button);

        f) JRadioButton 单选框

            i. 实例化:JRadioButton radio = new JRadioButton(String titile, Boolean Selected);

        g) ButtonGroup按钮组的使用

            i. 实例化: ButtonGroup bg = new ButtonGroup();

            ii. 把同组的按钮添加在bg中

            iii. 再把每个按钮添加在Frame中

    复制代码
     1               //添加单选按钮组
     2 
     3               ButtonGroup  g = new ButtonGroup();
     4 
     5               JRadioButton radio0 = new JRadioButton("Radio1");
     6 
     7               JRadioButton radio1 = new JRadioButton("Radio2");
     8 
     9               g.add(radio1);
    10 
    11               g.add(radio0);
    12 
    13               con.add(radio1);
    14 
    15               con.add(radio0);
    16 
    17               
    18 
    19               //添加不同组的单选按钮
    20 
    21               JRadioButton radio3 = new JRadioButton("Radio3");
    复制代码

            iv.       con.add(radio3);

        h) JComboBox 下拉菜单

            i. 实例化:JComboBox cb = new JComboBox(Object[] item);

     1         con.add(cb);

        i) JPanel类是最简单的容器类可容纳各类基本组件,包括其他面板

            i. JPanel可以作为面板组件添加至窗体

        1. Jframe.getContentPane.add(JPanel p);

        2. Jframe.setContentPane(JPanel p);

    复制代码
              //添加面板JPanel
    
              JPanel p = new JPanel();
    
              //添加至窗体
    
              con.add(p);
    
              //往p上添加内容
    复制代码

        3.       p.add(radio3);

        4. p = new JPanel(LayoutManager layout);

  • 相关阅读:
    去哪网 2014.9.25 笔试题
    关于 Private strand flush not complete
    以太网数据帧相关
    Java根据年份算出所属的生肖。
    DWR常用<init-param>参数
    更新ORACLE数据时遇到锁死情况的处理
    Debug of bash , perl and python
    2013长沙网络赛H题Hypersphere (蛋疼的题目 神似邀请赛A题)
    I.MX6 wm8962 0-001a: DC servo timed out
    I.MX6 U-boot PWM hacking
  • 原文地址:https://www.cnblogs.com/zhangkeyu/p/6659400.html
Copyright © 2011-2022 走看看