Java Swing学习
在Java学习的过程中,我们时常会因为控制台程序的枯燥而失去了学习Java的乐趣,那么今天我们就开始学习Java的Swing。也就是GUI(Graphical user interface),在应用到GUI时,你就可以体会到编程的乐趣。
下面我就以我编写的一个程序结果为例,向大家阐述一下,在Java中如何建立窗口以及容器中组件的布局。程序运行结果如下:
首先从图片本身开始分析:我们可以看到一个窗口,在窗口上面有这么五个按钮,然后五个按钮分部在这个窗体的边界。于是有了边界布局。从程序上面我们也是运用这样的逻辑实现的。创建窗口运用到java.awt.Frame类
代码如下:
//调用父类的一个构造方法,创建一个标题为“边界布局”的窗口
super("边界布局");
//设置窗口的大小,以像素为单位
this.setSize(200,300);
//设置窗口的起始位置(左上角坐标)
this.setLocation(100,100);
//设置窗口关闭时的默认操作
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
然后是创建按钮
//实例化面板对象
p = new JPanel();
//创建一个边界布局管理器对象,并把布局设置到面板中
p.setLayout(new BorderLayout());
b1 = new JButton("Button 东");
b2 = new JButton("Button 西");
b3 = new JButton("Button 南");
b4 = new JButton("Button 北");
b5 = new JButton("Button 中");
最后是将按钮加入到面板中,并设置布局方式
p.add(b1,BorderLayout.EAST);
p.add(b2,BorderLayout.WEST);
p.add(b3,BorderLayout.SOUTH);
p.add(b4,BorderLayout.NORTH);
p.add(b5,BorderLayout.CENTER);
其中包含的类是java.awt.BorderLayout;主要的代码就是这些。
完整的代码如下:
package com.example;
import java.awt.BorderLayout;
import javax.swing.*; public class BorderLayoutDemo extends JFrame{
private JPanel p;
private JButton b1,b2,b3,b4,b5;
public BorderLayoutDemo(){
super("边界布局");
p = new JPanel();
//创建一个边界布局管理器对象,并把布局设置到面板中
p.setLayout(new BorderLayout());
b1 = new JButton("Button 东");
b2 = new JButton("Button 西");
b3 = new JButton("Button 南");
b4 = new JButton("Button 北");
b5 = new JButton("Button 中"); p.add(b1,BorderLayout.EAST);
p.add(b2,BorderLayout.WEST);
p.add(b3,BorderLayout.SOUTH);
p.add(b4,BorderLayout.NORTH);
p.add(b5,BorderLayout.CENTER); this.add(p);
this.setSize(1000,1000);
this.setLocation(100,100);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[]args){
BorderLayoutDemo f = new BorderLayoutDemo();
f.setVisible(true);
}
}
Java Swing学习的更多相关文章
- Java Swing学习笔记——创建JFrame
创建显示一个空JFrame import javax.swing.JFrame; public class JFrameDemo extends JFrame{ public JFrameDemo() ...
- Java Swing 资料(转载学习)
Swing图像界面简介:https://blog.csdn.net/xietansheng/article/details/72814531 Swing实用经验总结篇:https://blog.csd ...
- Java swing项目-图书管理系统(swing+mysql+jdbc) 总结
(一)java Swing的学习. (1)学习如何安装windowbuilder插件的安装. <1>在eclipse中点击help <2>在help的下拉选中选择install ...
- Java Swing快速构建窗体应用程序
以前接触java感觉其在桌面开发上,总是不太方便,没有一个好的拖拽界面布局工具,可以快速构建窗体. 最近学习了一下NetBeans IDE 8.1,感觉其窗体设计工具还是很不错的 , 就尝试一下做了一 ...
- Java Swing的进化
摘 要:Swing已是一个比较老的工具集了,在美观的用户界面出来之前需要开发很长时间.它缺少一些你在开发富UI时所需的组件.幸运地是,像 Substance,SwingX及Java Look-and_ ...
- Java Swing界面编程(1)
写多了jsp,对于页面式的系统已经写烦了,本人也開始着手于java swing的学习,作为菜鸟,仅想用博客记录下我的swing学习的历程.话不多说,首先開始我的第一个窗体化程序. 下面给出源码: pa ...
- Java Swing 使用总结(转载)
随笔转载自:此去经年ぢ 地址:http://www.cnblogs.com/FLFL/p/5369756.html 1. GUI编程引言 以前的学习当中,我们都使用的是命令交互方式: 例如:在 ...
- 客户端是选择Java Swing还是C# Winform
登录|注册 mentat的专栏 目录视图 摘要视图 订阅 [专家问答]韦玮:Python基础编程实战专题 [知识库]Swift资源大集合 [公告]博客新皮肤上线啦 ...
- Swing学习1——总体概述
以下来自于JDK1.6 一.Swing学习我划分为两个方面: 一方面Swing的界面设计部分,包括相关组件类的继承关系,组件的功能用途,布局管理: 1.首先继承关系上自上而下为 java.lang.O ...
随机推荐
- 201521123003《Java程序设计》第13周学习总结
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu ...
- 201521123022 《Java程序设计》 第十二周学习总结
1. 本周学习总结 2. 书面作业 Q1.将Student对象(属性:int id, String name,int age,double grade)写入文件student.data.从文件读出显示 ...
- JSP知识点大纲图
这是我整理出来的JSP知识点大纲图,具体的内容都可以在我的博文中找到-.
- Hibernate注解配置与XML配置区别
注解配置的方式与xml很很多类似: 首先是需要加入4个jar包:hibernate-commons-annotations.jar . hibernate-annotations.jar.ejb3-p ...
- mysql5.6.24的安装与简单使用
1, 下载绿色版Mysql5.6.24 http://dlsw.baidu.com/sw-search-sp/soft/ea/12585/mysql-5.6.24-win32.1432006610.z ...
- uvalive 3708 Graveyard
https://vjudge.net/problem/UVALive-3708 题意: 一个长度为10000的圆环上放着n个雕塑,每个雕塑之间的距离均相等,即这个圆环被n个点均分.现在需要加入m个雕塑 ...
- maven 项目出现 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
maven 导入项目中经常出现这个问题 严重: Error configuring application listener of class org.springframework.web.cont ...
- String类的一些常见的比较方法(4)
1:boolean equals(Object obj); //比较字符穿的内容是否相同 区分大小写的 2:boolean equalsIgnoreCase(String str); //比较字符穿的 ...
- Vuforia开发完全指南---License Manager和Target Manager详解
License Manager和Target Manager License Manager 对于每一个用Vuforia开发的AR程序来说,都有一个唯一的license key,在Unity中必须首先 ...
- java踩坑记
1.String 相等 稍微有点经验的程序员都会用equals比较而不是用 ==,但用equals就真的安全了吗,看下面的代码 user.getName().equals("xiaoming ...