一、使用java Swing写个登陆界面,感受一下布局管理器的特性和熟悉一下控件的使用

package com.swing;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Cursor;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout; import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.border.LineBorder; /**
* java中最常用的三种布局管理器 ,布局管理器中的控件将失去setSize与setBound的功能
* 1、BorderLayout --》分为东西南北中,具有自动伸缩的能力,也就是你的控件是多大,相当于html中的内联元素
* 就会扩张到多大,直到所有的控件充满你设置的JFrame空间位置,东,向西伸缩,高度默认充满父控件,中,向四周伸缩
* 西,向东伸缩,,高度充满父控件,南,向北伸缩,宽度充满父控件,北,向南伸缩。宽度充满父控件
* 2、GridLayout -- 》网格布局,根据行列数和水平以及垂直间距来自动平均分配空间
* 3、FlowLayout -- 》流布局,可以设置它从什么位置开始布局,空间为控件默认的大小,相当于html中的内联元素
* @author may
*
*/ public class Login extends JFrame { private static final long serialVersionUID = 5083131604476590600L; private JPanel main;// 主体
private JPanel header;// 头部panel
private JPanel body;// 窗体
// 布局管理的每个空位只能放一个控件,所以需要放JPanel
private JPanel username;// 用户名输入栏
private JPanel password;// 用户密码输入栏
private JLabel name_label;
private JTextField name_text;
private JLabel pass_label;
private JLabel header_text;
private JPanel login;
private JButton submit;
private JPasswordField pass_text;
private JLabel tip; public Login() {
this.setSize(, );
// 窗口不能变
this.setResizable(false);
// 头部panel,类似html页面的div
header = new JPanel(); header_text = new JLabel("<html>登陆界面</html>");
// 设置水平居中
header_text.setHorizontalAlignment(JLabel.CENTER);
// 设置字体
header_text.setFont(new Font("宋体", Font.BOLD, ));
// 设置背景色
header_text.setBackground(new Color(, , ));
// 在布局管理器中设置控件的大小是无效的
// header_text.setSize(300, 20);
// 设置手型
header.setCursor(new Cursor(Cursor.MOVE_CURSOR));
// 设置边框
header.setBorder(new LineBorder(new Color(, , )));
header.add(header_text);
// 设置登陆体5行1列,垂直10像素
body = new JPanel(new GridLayout(, , , ));
body.setBackground(Color.white);
// 设置水平布局,默认水平居中开始
username = new JPanel(new FlowLayout(FlowLayout.CENTER));
username.setBackground(Color.white);
// 用户名
name_label = new JLabel("<html>账 号:</html>");
// 用户名输入框
name_text = new JTextField();
username.add(name_label);
username.add(name_text);
// 密码输入
pass_label = new JLabel("密 码:");
pass_text = new JPasswordField();
password = new JPanel();
password.setBackground(Color.white);
password.add(pass_label);
password.add(pass_text);
// 登陆
submit = new JButton("登陆");
submit.setBackground(Color.green);
submit.setFont(new Font("宋体", Font.BOLD, ));
submit.setForeground(Color.white);
login = new JPanel(new FlowLayout());
login.setBackground(Color.white);
login.add(submit);
// 空白panel,只是为了占位
JPanel jpanel1 = new JPanel();
jpanel1.setBackground(Color.white);
body.add(jpanel1);
body.add(username);
body.add(password);
body.add(login);
tip = new JLabel("注册新用户|忘记密码?");
tip.setHorizontalAlignment(JLabel.RIGHT);
tip.setVerticalAlignment(JLabel.NORTH);
body.add(tip);
main = new JPanel(new BorderLayout());
main.add(body);
main.setBackground(Color.white);
main.add(header, BorderLayout.NORTH);
this.getContentPane().add(main, BorderLayout.CENTER);
// 设置为水平居中
this.setLocationRelativeTo(null);
// 设置点击关闭按钮时,关闭窗体,推出程序
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true); } public static void main(String[] args) {
new Login();
} }

 二、界面

javaSwing的更多相关文章

  1. JavaSwing JScrollPane的使用

    JavaSwing JScrollPane的使用: 参考:http://duyz.blog.ifeng.com/article/340649.html package com.srie.test; i ...

  2. 通信原理课程设计Javaswing技术计算出PCM编码——猎八哥FLY

    package keshe; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; ...

  3. Java-Swing常用布局管理器

    http://www.cnblogs.com/hthuang/p/3460234.html   5.Java-Swing常用布局管理器       应用布局管理器都属于相对布局,各组件位置可随界面大小 ...

  4. JavaSwing程序设计(目录)

    一.JavaSwing 概述 JavaSwing 图形界面概述 二.JavaSwing 基本组件 JLabel(标签) JButton(按钮) JTextField(文本框) JPasswordFie ...

  5. JavaSwing 版本的简单扫雷游戏

    JavaSwing 版本的简单扫雷游戏 一.扫雷游戏的基本规则 1.扫雷游戏分为初级.中级.高级和自定义四个级别. 单击游戏模式可以选择"初级"."中级".&q ...

  6. Java-Swing中使用Web富文本编辑器

    资料下载 (截取出了邮件发送的功能.) 2018/11/10 因为要 win7 电脑 IE 8 的原因,使用了 jxBrower 拓展,更容易使用,参考链接(推荐) 问题介绍 window客户端软件的 ...

  7. JavaSwing 船只停靠管理可视化(五)

    JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...

  8. JavaSwing 船只停靠管理可视化(四)

    JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...

  9. JavaSwing 船只停靠管理可视化(三)

    JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...

  10. JavaSwing 船只停靠管理可视化(二)

    JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...

随机推荐

  1. php三维数组去重

    假设叫数组 $my_array; // 新建一个空的数组. $tmp_array = array(); $new_array = array(); // 1. 循环出所有的行. ( $val 就是某个 ...

  2. iptables删除规则

    查看nat规则: iptables -t nat -nL --line-number 添加规则是-A和-I,-A是添加到末尾,-I是添加到指定位置,默认添加到最前面.删除使用-D,也就是原来“ipta ...

  3. win32+ apache2.2 + tomcat7配置

    首先已安装了apache2.2.22与tomcat7,并下载了相应的连接器文件mod_jk.so,存放于apache目录的modules下.我的电脑的安装路径如下:1.D:\server\Apache ...

  4. php删除目录下的所有文件和目录

    <?php /** * 递归实现删除目录下的所有的文件和文件夹 * @param $dir 要删除的目录 * @param bool $deleteRootToo 是否删除根目录 默认不删除 h ...

  5. 【VB6】使用VB6创建和访问Dom树【爬虫基础知识 】

    使用VB6创建和访问Dom树 关键字:VB,DOM,HTML,爬虫,IHTMLDocument 我们知道,在VB中一般大家会用WebBrowser来获取和操作dom对象. 但是,有这样一种情形,却让我 ...

  6. [转]linux sort,uniq,cut,wc命令详解

    sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...

  7. Java面向对象㈡ -- 继承与多态

    Java的继承是通过extends和implement来实现的,Java不支持多继承,但是Java支持多层继承以及多实现(接口).Java继承有一个关键字super是用来指向父类.Java继承衍生出覆 ...

  8. JQuery -- this 和 $(this) 的区别

    this和$(this)都是指的调用它的东西,但this是一个Html 元素,例如给img标签设置src属性可以这样写 this.src= "test.jpg"; 但是如果将thi ...

  9. 说说无耻的商河水木清华开发商2013"交房

    说说无耻的水木清华开发商2013"交房" 我买的是22号楼,合同里写的是2011年6月30号前交房.4月28我手机响了,电话那边说是水木清华的,29号交房.说交房通知书已经EMS发 ...

  10. Java 之ThreadLocal 对应C#之ThreadStatic

    java: public class JForumExecutionContext { private static ThreadLocal userData = new ThreadLocal(); ...