几个常用组件:

  在图形用户界面编程中,我们常常会提供用户登陆界面,比如登陆到会员管理系统,登陆到工资管理系统,仓库管理系统等,如下图我们就会用到:

  1. 文本框(JTextField)

  2. 密码框(JPasswordField)

  3. 便签(JLable)

  

  example code:

  

 package demo7;
import java.awt.*; import javax.swing.*; /*
* 多种布局管理器
* */
public class demo8 extends JFrame{ /**
* @param args
*/
//定义 组件
JPanel jp1,jp2,jp3;
JLabel jlb1,jlb2;
JButton jb1,jb2;
JTextField jtf1,jtf2;
JPasswordField jpf1;
public static void main(String[] args) {
// TODO Auto-generated method stub
demo8 de =new demo8();
} //构造函数
public demo8()
{
jp1 = new JPanel();
jp2 = new JPanel();
jp3 = new JPanel(); jlb1 = new JLabel("用户名");
jlb2 = new JLabel("密码");
jb1 =new JButton("登陆");
jb2 =new JButton("取消"); jtf1 = new JTextField(10);
jpf1 = new JPasswordField(10); //设置布局管理器
this.setLayout(new GridLayout(3, 1)); //加入各个组件
jp1.add(jlb1);
jp1.add(jtf1); jp2.add(jlb2);
jp2.add(jpf1); jp3.add(jb1);
jp3.add(jb2); //加入到jframe
this.add(jp1);
this.add(jp2);
this.add(jp3); this.setSize(300, 150);
this.setTitle("会员管理系统");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}

  在图形用户界面编程中,我们 常常会提供用户注册界面 ,如下图:

  这个时候我们就会用到:

  1. 复选框组件(JCheckBox)

  2. 单选框组件(JRadioButton)

  特别说明:

  同一组单选按钮必须先创建buttonGroup,然后把单选框组件放入到buttonGroup中。

  

 /*
* 单选框和复选框案例
* */
package demo7; import java.awt.*; import javax.swing.*; public class demo9 extends JFrame{ /**
* @param args
*/ //定义组件
JPanel jp1,jp2,jp3;
JLabel jl1,jl2;
JButton jb1,jb2;
JCheckBox jcb1,jcb2,jcb3;
JRadioButton jrb1,jrb2,jrb3;
ButtonGroup bg;
public static void main(String[] args) {
// TODO Auto-generated method stub
demo9 demo = new demo9();
} //构造函数
public demo9()
{
//创建组件
jp1 = new JPanel();
jp2 = new JPanel();
jp3 = new JPanel();
jl1 = new JLabel("你喜欢的运动");
jl2 = new JLabel("你的性别");
jb1 = new JButton("注册用户");
jb2 = new JButton("取消注册"); jcb1 = new JCheckBox("足球");
jcb2 = new JCheckBox("篮球");
jcb3 = new JCheckBox("网球"); jrb1 = new JRadioButton("男");
jrb2 = new JRadioButton("女");
//一定要把jrb1,jrb2放入到一个buttongroup
ButtonGroup bg = new ButtonGroup();
bg.add(jrb1);
bg.add(jrb2); //设置布局管理器
this.setLayout(new GridLayout(3,1)); //添加组件
jp1.add(jl1);
jp1.add(jcb1);
jp1.add(jcb2);
jp1.add(jcb3); jp2.add(jl2);
jp2.add(jrb1);
jp2.add(jrb2); jp3.add(jb1);
jp3.add(jb2); this.add(jp1);
this.add(jp2);
this.add(jp3); this.setSize(300, 150);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
} }

  在图形用户界面编程中,我们常常会提供用户调查界面,如下图:

  这个时候我们就会用到:

  1. 下拉框组件(JComboBox)

  2. 列表框组件(JList)

  3. 滚动窗格组件

  特别说明:

  一般来说,列表框组件+滚动窗格组件是结合使用的。目的是让列表框中的选项可以有滚动条支持。

   

 /*
* JComboBox/JList/JScrollPane
* */
package demo7;
import java.awt.*; import javax.swing.*; public class demo10 extends JFrame{ /**
* @param args
*/
//定义组件
JPanel jp1,jp2,jp3;
JLabel jl1,jl2;
JComboBox jcb1;
JList jlist;
JScrollPane jsp;
public static void main(String[] args) {
// TODO Auto-generated method stub
demo10 demo = new demo10();
} //构造函数
public demo10()
{
jp1 = new JPanel();
jp2 = new JPanel(); jl1 = new JLabel("你的籍贯");
jl2 = new JLabel("旅游地点"); String []jg = {"北京","上海","天津","火星"};
jcb1 = new JComboBox(jg); String []dd = {"九寨沟","故宫","长城","天安门"};
jlist= new JList(dd); jlist.setVisibleRowCount(2);
jsp = new JScrollPane(jlist);
//设置你希望显示多少个选项 //设置布局
this.setLayout(new GridLayout(3,1)); //添加组件
jp1.add(jl1);
jp1.add(jcb1); jp2.add(jl2);
jp2.add(jsp); this.add(jp1);
this.add(jp2); this.setSize(300, 300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true); } }

  

  

java基础 常用组件的更多相关文章

  1. java基础--常用函数总结

    java基础--常用函数总结 2019-3-16-23:28:01-----云林原创 1.split()字符串分割函数 将一个字符串分割为子字符串,然后将结果作为字符串数组返回. 2.Math.flo ...

  2. Java 基础 常用API (Object类,String类,StringBuffer类)

    Java API Java 的API(API: Application(应用) Programming(程序) Interface(接口)) Java API就是JDK中提供给我们使用的类,这些类将底 ...

  3. Java基础-常用工具类(一)

    object类 Object 类是所有类的的父类,如果一个类没有明确使用EXPENTS关键字明确标识继承另外一个类,那么这个类默认继承object类,oject类中的方法适合所有子类 1)toStri ...

  4. Java基础——常用类之日期时间类

    如果有机会,请尝试Java8中全新的时间日期API!(参见Java8新特性随笔) 如果还是使用Java7及之前的版本,那么你可以尝试一些工具类(参考使用工具类相关的Hutool-DateUtil) 如 ...

  5. Java基础--常用API--集合类相关API

    一.泛型 1.泛型的本质是将类型参数化,即将数据类型作为参数. 2.泛型可以在编译期进行检查,其所有的强制转换是隐式且自动的,提高了代码的安全性. 3.泛型可以用在类(泛型类).接口(泛型接口).方法 ...

  6. Java基础--常用API--java.lang.Object

    一.简述 1.Object类是所有类的父类,即直接或间接的继承java.lang.Object类.省略了extends Object. 2.方法 (1)protected native Object ...

  7. Java基础--常用API--日期相关API

    一.java.util.Date 1.只用于显示系统时间,其大部分操作由Calendar代替. 格林威治时间(GMT):指的是1970年1月1日0时,不同地区有时间差. 默认输出格式:星期.月.日.时 ...

  8. Java基础--常用API--字符串相关API

    一.java.lang.String 1.string对象不可变,被final修饰,不能被继承. 2.赋值方式: (1)直接赋值.比如: String name = "rick"; ...

  9. Java基础--常用API--IO流相关API

    一.IO流 1.定义: IO流指的是Input/Output流,即输入流/输出流. 输入流:将外界信息写入程序,即从外界获取信息,属于读操作. 输出流:将程序数据发送给外界,即向外界传输数据,属于写操 ...

随机推荐

  1. MonoBehaviour Lifecycle(生命周期/脚本执行顺序)

    脚本执行顺序 前言 搭建一个示例来验证Unity脚本的执行顺序,大概测试以下部分: 物理方面(Physics) 渲染(Scene rendering) 输入事件(InputEvent) 流程图 Uni ...

  2. LLDB基础知识

    LLDB基础知识 LLDB控制台 Xcode中内嵌了LLDB控制台,在Xcode中代码的下方,我们可以看到LLDB控制台. LLDB控制台平时会输出一些log信息.如果我们想输入命令调试,必须让程序进 ...

  3. [poj1113][Wall] (水平序+graham算法 求凸包)

    Description Once upon a time there was a greedy King who ordered his chief Architect to build a wall ...

  4. ssh无密码登录The authenticity of host 'localhost (::1)' can't be established.

    The authenticity of host 'localhost (::1)' can't be established. http://blog.csdn.net/cyuyan112233/a ...

  5. [LeetCode] Construct Binary Tree from Inorder and Postorder Traversal 由中序和后序遍历建立二叉树

    Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume tha ...

  6. Backbone.js应用基础

    前言: Backbone.js是一款JavaScript MVC应用框架,强制依赖于一个实用型js库underscore.js,非强制依赖于jquery:其主要组件有模型,视图,集合,路由:与后台的交 ...

  7. 【数据结构】简单谈一谈二分法和二叉排序树BST查找的比较

    二分法查找: 『在有序数组的基础上通过折半方法不断缩小查找范围,直至命中或者查询失败.』   二分法的存储要求:要求顺序存储,以便于根据下标随机访问   二分法的时间效率:O(Log(n))   二分 ...

  8. mysql 基本操作

    创建数据库 create database studentdb charset utf8; #创建数据库 create database studentdb charset utf8; #查看数据库的 ...

  9. jquery-三级联动

    html <!DOCTYPE html> <html> <head> <meta charset=gbk /> <title>selectL ...

  10. DedeCMS使用方法----如何将网站上传到服务器

    我们如果在本地已经把网站做好了,上传到服务器上去的正确姿势是什么样的呢?简单的很~跟着我的步调来~ 方法一(推荐此方法): 1.把你本地所有的文件压缩,上传至服务器上的根目录,再解压. 2.把本地的数 ...