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);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏一“技”之长

iOS开发CoreAnimation解读之四——Layer层动画内容

        通过前几篇博客的介绍,我们可以了解到layer层可以设置许多与控件UI相关的属性,并且对于iOS开发,UIView层的属性是会映射到CALaye...

10310
来自专栏别先生

JAVA学习Swing章节按钮组件JButton的简单学习

package com.swing; import java.awt.Container; import java.awt.Dimension; import...

36150
来自专栏技术之路

QTableView 一列添加两个按钮

在QTableView的一列里添加两个按钮,之前添加一个按钮的思路是一样的,只是计算了一下按钮的宽,放两个按钮而已。 本例源代码:QtTowButtons.ra...

61990
来自专栏练小习的专栏

分享几种JS烟花

今天看到蓝色理想有几个哥们都发了自己写的烟花效果,弄的心里痒痒,自己也想写一个出来玩,结果把IE写死好几次,还是放弃了,这里转几个别人写的效果上来分享 <!DO...

27970
来自专栏用户2442861的专栏

CSS技巧(一):清除浮动

http://www.cnblogs.com/ForEvErNoME/p/3383539.html

7810
来自专栏听雨堂

Android新手之旅(9) 自定义的折线图

  希望实现一个折线图,但没有找到合适的控件或者代码,只有一个基本样子的,在它的基础上,进行了一些改进,改得比较灵活,可以传递参数,可以设置位置,坐标轴长度,刻...

25970
来自专栏别先生

JAVA学习绘图颜色及其笔画属性设置字体显示文字

package com.graphics; import java.awt.*; import java.awt.geom.Rectangle2D; impo...

36960
来自专栏Keegan小钢

Android样式的开发:Property Animation篇

前篇文章说过,Android框架还提供了两种动画体系,前一篇已经总结了视图动画(View Animation)的用法,本篇则接着总结另一种动画体系——属性动画(...

10130
来自专栏听雨堂

Android新手之旅(9) 自定义的折线图

  希望实现一个折线图,但没有找到合适的控件或者代码,只有一个基本样子的,在它的基础上,进行了一些改进,改得比较灵活,可以传递参数,可以设置位置,坐标轴长度,刻...

35060
来自专栏Java帮帮-微信公众号-技术文章全总结

Java开发画板

Test类 public class Test { public static void main(String[] args){ ...

47850

扫码关注云+社区

领取腾讯云代金券