这周主要练习了GUI界面组件,设计了一个登陆界面,整体运用BorderLayout界面,将界面分为上、中、下,又将中间部分分为三层,运用了组合框来记录登陆ID,添加了复选框完善程序,基本实现了登陆界面的操作,需要进一步学习IO流让自己的程序可以添加登陆记录。以下是我的程序源代码(注:考虑到是登陆界面所以界面大小固定)。
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class loginframe extends JFrame{
String number[]={"2014330111","2014330112","2014330113","2014330114","2014330115","2014330116","2014330117"};
private JComboBox combo;
private JPasswordField passField;
public loginframe(){
this.setTitle("登录界面");
this.setSize(250, 180);
this.setResizable(false);
this.setLocationRelativeTo(this);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setContentPane(createContentPanel());
}
private JPanel createContentPanel(){
JPanel panel=new JPanel(new BorderLayout());
panel.add(BorderLayout.NORTH,createNPanel());
panel.add(BorderLayout.CENTER,createCeterPanel());
panel.add(BorderLayout.SOUTH,createSPanel());
return panel;
}
private JPanel createNPanel(){
JPanel panel=new JPanel();
panel.add(new JLabel("登陆系统"),JLabel.CENTER);
return panel;
}
private JPanel createCeterPanel(){
JPanel panel=new JPanel(new BorderLayout());
panel.add(BorderLayout.NORTH,createIDPassPanel());
panel.add(BorderLayout.SOUTH,createOptionsPanel());
return panel;
}
private JPanel createOptionsPanel() {
JPanel panel=new JPanel();
JCheckBox box1=new JCheckBox("记住密码");
JCheckBox box2=new JCheckBox("自动登录");
panel.add(box1);
panel.add(box2);
return panel;
}
private JPanel createIDPassPanel(){
JPanel panel=new JPanel(new GridLayout(2,1));
panel.add(createIDPanel());
panel.add(createPassPanel());
return panel;
}
private JPanel createPassPanel(){
JPanel panel=new JPanel(new BorderLayout());
JLabel label=new JLabel("密码:");
passField=new JPasswordField(10);
panel.add(BorderLayout.WEST,label);
panel.add(BorderLayout.CENTER,passField);
return panel;
}
private JPanel createIDPanel(){
JPanel panel=new JPanel(new BorderLayout());
JLabel label=new JLabel("账号:");
combo=new JComboBox(number);
combo.addActionListener(new ActionListener() {

                @Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stub}});panel.add(BorderLayout.WEST,label);panel.add(BorderLayout.CENTER,combo);return panel;}private JPanel createSPanel(){JPanel panel=new JPanel();JButton loginBtn=new JButton("登陆");loginBtn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent arg0) {if(JOptionPane.YES_OPTION==JOptionPane.showConfirmDialog(null,"确认要登陆吗?")){System.exit(0);}}});JButton cancelBtn=new JButton("取消");panel.add(loginBtn);panel.add(cancelBtn);cancelBtn.addActionListener(new ActionListener() {      @Overridepublic void actionPerformed(ActionEvent arg0) {// TODO Auto-generated method stubif(JOptionPane.YES_OPTION==JOptionPane.showConfirmDialog(null,"确认要退出吗?")){System.exit(0);}}});return panel;}public static void main(String[] args) {// TODO Auto-generated method stubnew loginframe().setVisible(true);}}


转载于:https://www.cnblogs.com/liangcong/p/5293383.html

JAVA GUI界面组件学习相关推荐

  1. linux java 弹出界面,java gui界面在linux

    java gui界面在linux [2021-02-05 02:24:38]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(&quo ...

  2. matlab软件中GUI界面开发学习——双色球选择小工具

    matlab软件中GUI界面开发学习--双色球选择小工具 先上一张界面截图: 特别说明:只是最近对双色球比较感兴趣,所以找了一个实际的项目依据帮助我学习GUI工具,小工具的相关条件仅代表个人想法,选择 ...

  3. JAVA GUI界面美化 使用Quaqua仿MAC(苹果)主题LookAndFeel经验分享

    刚在课程实训中写完了一个JAVA调用c++dll动态链接库的程序之后,想要对GUI界面进行美化,于是到网上搜了一圈各种jar包,发现了这个仿MAC主题的Quaqua,但是果不其然这个是开发给MAC系统 ...

  4. 利用 Window Builder 快速搭建Java GUI 界面

    读完本篇文章,你可以迅速上手JavaGUI编程,可以尝试自己写出美美的界面啦~ (虽然不是很美观hhh但是比起黑框框好多了) 目录 1. 为 eclipse 安装 window builder 插件 ...

  5. java gui界面设计qq_Java swing界面开发(仿QQ登录界面)

    首先引入包的概念,包:给代码分类,提高的了代码的可读性,封装后方便管理.在包中类的引入:import 包名.类名;包名需小写,多单词用"."隔开.类名的命名规范:首字母大写其后的每 ...

  6. java图形界面_学习Java有什么用?Java的应用领域有哪些?

    很多人可能会问,学习Java有用吗?Java是世界第一编程语言!由于它开源.免费.跨平台,这些特性都让他富有生命力.国内最具有知名度三家IT企业BAT-(百度,阿里,腾讯)和其他众多企业,都在广泛使用 ...

  7. JAVA GUI重要知识点学习心得

    本人最近学习javaGUI发现重要知识点和思想用的频率很高,把它们整理下来一起分享 1:JFrame窗口和JDialog窗口 一班JFrame用作主窗口,JDialog用作弹出窗口(即对话框),但JF ...

  8. JAVA GUI界面动态背景图设计

    在做JAVA项目时我们有时候要用到界面的动态背景,但是对于初学者来说通常会使用普通的IO流来设置背景图片,但这往往会出问题的,要么找不到路径,要么动态背景图片设置不成功(动态图片变成静态图片),下面我 ...

  9. Java GUI界面

    package pac1;import java.awt.*; import java.awt.event.*; import javax.swing.*;public class Jlogin ex ...

最新文章

  1. Java中普通代码块,构造代码块,静态代码块区别
  2. Linux疑难杂症解决方案100篇(二十)-Linux正则表达式(实用)指南
  3. oracle拆分字段为多行,一句话实现字段拆分成多行
  4. 全球及中国模具激光焊接机行业供需分析与投资战略研究报告2021-2027年版
  5. 怎样制作html插件,自己动手制作一个Chrome插件 入门级
  6. predicate 列存储索引扫描_ColumnStore index (列存储索引)解析
  7. python开源流程图软件_Dia
  8. 【Jetson Nano学习笔记】4. python 3编译bridge
  9. 前端学习(1579):React使用步骤
  10. openwrt 设置samba服务器与pc共享文件
  11. 日期插件My97DatePicker
  12. 最近学习mpvue框架开发微信小程序,把wepy框架的项目实现到mpvue中,知道其中的一些两者之间的区别...
  13. 投简历 找工作 App
  14. 小米路由器登陆以及切换wan账户脚本
  15. 一款在线Markdown编辑器,Markdown小白神器
  16. python 复制word内容_Python读取word文本操作详解
  17. JAVA运行内存的设置
  18. pg数据库自动备份记录
  19. 基于Python的阴阳师后台全平台辅助
  20. 人工智能生态交易平台

热门文章

  1. 学习Java必须避开的十大致命雷区,新手入门千万不要踩!
  2. VueSSR高阶指南
  3. 腾讯课堂:了解it技术圈的虚拟化容器化之docker
  4. Go -- 调用C/C++
  5. day08面向对象+
  6. 资源向导之 quot;APUEquot;
  7. 《高阶Perl》——3.8 对象方法里的缓存
  8. maven入门(7)maven项目(组件)的坐标
  9. bootstrap 栅格系统实现类似table跨行
  10. 计划doing.....