javaSwing
一、使用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的更多相关文章
- JavaSwing JScrollPane的使用
JavaSwing JScrollPane的使用: 参考:http://duyz.blog.ifeng.com/article/340649.html package com.srie.test; i ...
- 通信原理课程设计Javaswing技术计算出PCM编码——猎八哥FLY
package keshe; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; ...
- Java-Swing常用布局管理器
http://www.cnblogs.com/hthuang/p/3460234.html 5.Java-Swing常用布局管理器 应用布局管理器都属于相对布局,各组件位置可随界面大小 ...
- JavaSwing程序设计(目录)
一.JavaSwing 概述 JavaSwing 图形界面概述 二.JavaSwing 基本组件 JLabel(标签) JButton(按钮) JTextField(文本框) JPasswordFie ...
- JavaSwing 版本的简单扫雷游戏
JavaSwing 版本的简单扫雷游戏 一.扫雷游戏的基本规则 1.扫雷游戏分为初级.中级.高级和自定义四个级别. 单击游戏模式可以选择"初级"."中级".&q ...
- Java-Swing中使用Web富文本编辑器
资料下载 (截取出了邮件发送的功能.) 2018/11/10 因为要 win7 电脑 IE 8 的原因,使用了 jxBrower 拓展,更容易使用,参考链接(推荐) 问题介绍 window客户端软件的 ...
- JavaSwing 船只停靠管理可视化(五)
JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...
- JavaSwing 船只停靠管理可视化(四)
JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...
- JavaSwing 船只停靠管理可视化(三)
JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...
- JavaSwing 船只停靠管理可视化(二)
JavaSwing 船只停靠管理可视化(一) JavaSwing 船只停靠管理可视化(二) JavaSwing 船只停靠管理可视化(三) JavaSwing 船只停靠管理可视化(四) JavaSwin ...
随机推荐
- php三维数组去重
假设叫数组 $my_array; // 新建一个空的数组. $tmp_array = array(); $new_array = array(); // 1. 循环出所有的行. ( $val 就是某个 ...
- iptables删除规则
查看nat规则: iptables -t nat -nL --line-number 添加规则是-A和-I,-A是添加到末尾,-I是添加到指定位置,默认添加到最前面.删除使用-D,也就是原来“ipta ...
- win32+ apache2.2 + tomcat7配置
首先已安装了apache2.2.22与tomcat7,并下载了相应的连接器文件mod_jk.so,存放于apache目录的modules下.我的电脑的安装路径如下:1.D:\server\Apache ...
- php删除目录下的所有文件和目录
<?php /** * 递归实现删除目录下的所有的文件和文件夹 * @param $dir 要删除的目录 * @param bool $deleteRootToo 是否删除根目录 默认不删除 h ...
- 【VB6】使用VB6创建和访问Dom树【爬虫基础知识 】
使用VB6创建和访问Dom树 关键字:VB,DOM,HTML,爬虫,IHTMLDocument 我们知道,在VB中一般大家会用WebBrowser来获取和操作dom对象. 但是,有这样一种情形,却让我 ...
- [转]linux sort,uniq,cut,wc命令详解
sort sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行排序. sort语法 ...
- Java面向对象㈡ -- 继承与多态
Java的继承是通过extends和implement来实现的,Java不支持多继承,但是Java支持多层继承以及多实现(接口).Java继承有一个关键字super是用来指向父类.Java继承衍生出覆 ...
- JQuery -- this 和 $(this) 的区别
this和$(this)都是指的调用它的东西,但this是一个Html 元素,例如给img标签设置src属性可以这样写 this.src= "test.jpg"; 但是如果将thi ...
- 说说无耻的商河水木清华开发商2013"交房
说说无耻的水木清华开发商2013"交房" 我买的是22号楼,合同里写的是2011年6月30号前交房.4月28我手机响了,电话那边说是水木清华的,29号交房.说交房通知书已经EMS发 ...
- Java 之ThreadLocal 对应C#之ThreadStatic
java: public class JForumExecutionContext { private static ThreadLocal userData = new ThreadLocal(); ...