3.JAVA之GUI编程Frame窗口
创建图形化界面思路:
1.创建frame窗体;
2.对窗体进行基本设置;
比如大小、位置、布局
3.定义组件;
4.将组件通过add方法添加到窗体中;
5.让窗体显示,通过setVisible(ture)。
------------------------------
新建一个class类,名称为:studyframe
功能实现如下几点:
1.建立一个窗口;
2.窗口有标题;
3.窗口大小设置;
4.窗口位置设置;
5.窗口可见。
代码如下:
import java.awt.Frame;
class studyframe {
public static void main(String[] args) {
Frame f = new Frame();//构造一个最初不可见的 Frame 新实例()。
f.setTitle("窗口——by星云");//设置窗口标题内容
f.setSize(500, 400);//设置窗口大小,宽度500,高度400
f.setLocation(300, 200);//设置窗口位置为距离屏幕左边水平方向300,上方垂直方向200
f.setVisible(true);//设置窗体可见。
}
}
注意:(由于本篇还没有讲到事件监听器,所以本篇中窗体是无法直接关闭的。
想要关闭必须通过进程管理器结束进程方式关掉。)
运行效果如下:

上面代码也可以这么写:
import java.awt.Frame;
class studyframe {
public static void main(String[] args) {
Frame f = new Frame("窗口——by星云");// 构造一个新的、最初不可见的、具有指定标题的 Frame 对象。
f.setSize(500, 400);//设置窗口大小,宽度500,高度400
f.setLocation(300, 200);//设置窗口位置为距离屏幕左边水平方向300,上方垂直方向200
f.setVisible(true);//设置窗体可见。
}
}
******************************
功能实现如下几点:
1.建立一个窗口;
2.窗口有标题;
3.窗口大小设置;
4.窗口位置设置;
5.窗口可见。
6.添加一个带有文字标签的按钮;
import java.awt.Button;
import java.awt.Frame; class studyframe {
public static void main(String[] args) {
Frame f = new Frame();//构造一个最初不可见的 Frame 新实例()。
f.setTitle("窗口——by星云");//设置窗口标题内容
f.setSize(500, 400);//设置窗口大小,宽度500,高度400
f.setLocation(300, 200);//设置窗口位置为距离屏幕左边水平方向300,上方垂直方向200
f.setVisible(true);//设置窗体可见。
Button b=new Button("我是一个按钮");//在窗口中添加一个按钮;
f.add(b);//将按钮添加到窗口内;
} }
运行效果如下:


******************************
上面这样肯定不好看,我们对其设置下布局方式来进行优化下。
功能实现如下几点:
1.建立一个窗口;
2.窗口有标题;
3.窗口大小设置;
4.窗口位置设置;
5.窗口可见。
6.添加一个带有文字标签的按钮;
7.窗体设置布局方式。
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame; class studyframe {
public static void main(String[] args) {
Frame f = new Frame();//构造一个最初不可见的 Frame 新实例()。 f.setTitle("窗口——by星云");//设置窗口标题内容
f.setSize(500, 400);//设置窗口大小,宽度500,高度400
f.setLocation(300, 200);//设置窗口位置为距离屏幕左边水平方向300,上方垂直方向200
f.setVisible(true);//设置窗体可见。
f.setLayout(new FlowLayout());//设置窗体布局为流式布局。 Button b=new Button("我是一个按钮");//在窗口中添加一个按钮;
f.add(b);//将按钮添加到窗口内
} }
运行效果如下:

上面代码也可以这么写,
import java.awt.*;
class studyframe {
public static void main(String[] args) {
Frame f = new Frame();//构造一个最初不可见的 Frame 新实例()。
f.setTitle("窗口——by星云");//设置窗口标题内容
f.setSize(500, 400);//设置窗口大小,宽度500,高度400
f.setLocation(300, 200);//设置窗口位置为距离屏幕左边水平方向300,上方垂直方向200
f.setVisible(true);//设置窗体可见。
f.setLayout(new FlowLayout());//设置窗体布局为流式布局。
Button b=new Button("我是一个按钮");//在窗口中添加一个按钮;
f.add(b);//将按钮添加到窗口内
}
}
参考文献:

Frame 是带有标题和边框的顶层窗口。




Window 对象是一个没有边界和菜单栏的顶层窗口。窗口的默认布局是 BorderLayout。
构造窗口时,它必须拥有窗体、对话框或其他作为其所有者定义的窗口。










此类创建一个标签按钮。

上篇:2.JAVA之GUI编程布局 下篇:4.JAVA之GUI编程事件监听机制
3.JAVA之GUI编程Frame窗口的更多相关文章
- 2.JAVA之GUI编程布局
布局管理器 容器中的组件排放方式,就是布局 常见的布局管理器: **************************************************** 1.FlowLayout(流式 ...
- 4.JAVA之GUI编程事件监听机制
事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...
- 5.JAVA之GUI编程窗体事件
我们回顾下第三篇时的内容: 在3.JAVA之GUI编程Frame窗口中窗体是无法直接关闭的,想要关闭须进程管理器结束进程方式关掉. 现在我们就来解决下这个问题. ******************* ...
- 6.JAVA之GUI编程Action事件
功能:单击一个按钮实现关闭窗口: import java.awt.*; import java.awt.event.*; public class StudyAction { // 定义该图形所需的组 ...
- 7.JAVA之GUI编程鼠标事件
鼠标事件: 功能: 1.基本窗体功能实现 2.鼠标移动监听,当鼠标移动到按钮上时,触发打印事件. 3.按钮活动监听,当按钮活动时,触发打印事件. 4.按钮被单击时触发打印事件. 源码如下: impor ...
- 8.JAVA之GUI编程键盘码查询器
程序使用说明: 1.本程序由于是java代码编写,所以运行需安装jdk并配置好环境变量. 2. 复制java代码到记事本内,另存为Keyboard_events.java: 3.复制批处理代码到记事本 ...
- 13.JAVA之GUI编程将程序打包jar
jar基本命令: 目标:将下列MyMenuDemo.java代码打包成jar. 方法如下: 1.把java代码放到d:\myclass目录下. 2.按下快捷键ctrl+r,打开运行窗口,输入cmd后回 ...
- Java之GUI编程(一)
GUI全称Graphical User Interfaces,意为图形用户户界面,又称为图形用户接口.GUI指的就是採用图形方式显示的计算机操作用户界面,打个例如吧.我们点击QQ图标,就会弹出一个QQ ...
- java基础—GUI编程(一)
一.AWT介绍
随机推荐
- C# 条形码操作【源码下载】
本篇介绍通过C#生成和读取一维码.二维码的操作. 目录 1. 介绍:介绍条形码.条形码的分类以及ZXing.Net类库. 2. 一维码操作:包含对一维码的生成.读取操作. 3. 二维码操作:包含对二维 ...
- HTML DOM 介绍
本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...
- dagger2系列之Scope
Dagger的Scope注解代表的是作用域,通过实现自定义@Scope注解,标记当前生成对象的使用范围,标识一个类型的注射器只实例化一次,在同一个作用域内,只会生成一个实例, 然后在此作用域内共用一个 ...
- 【NLP】揭秘马尔可夫模型神秘面纱系列文章(一)
初识马尔可夫和马尔可夫链 作者:白宁超 2016年7月10日20:34:20 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学习自然语言处 ...
- AI人工智能系列随笔:syntaxnet 初探(1)
人工智能是 最近的一个比较火的名词,相信大家对于阿尔法狗都不陌生吧?其实我对人工智能以前也是非常抵触的,因为我认为机器人会取代人类,成为地球乃至宇宙的霸主,但是人工智能带给我的这种冲击,我个人感觉是欲 ...
- winform异步加载数据到界面
做一个学习记录. 有两个需求: 1.点击按钮,异步加载数据,不卡顿UI. 2.把获取的数据加载到gridview上面. 对于需求1,2,代码如下: public delegate void ShowD ...
- 【夯实PHP基础】PHP常用类和函数总结
本文地址 代码提纲: 1. 字符串处理类及函数 2. 数组处理类及函数 3 .web处理类及函数 将常用的PHP的类和函数总结到这里,主要是 自己用过的,比较有感觉. 1. [字符串处理] 1)[ut ...
- 分布式服务注册和发现consul 简要介绍
Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,Consul的方案更"一站式",内置了服务注册与发现框 架 ...
- 解决Windows 8.1中所有的应用(Modern App)无法打开(闪退)的问题
我已经在3台电脑上遇到这个问题了,症状是,所有应用商店安装的App都无法打开,包括应用商店本身,在开始界面点击应用以后,应用的Logo一闪而过,然后就消失了,回到了开始界面.查看系统应用日志,会有这样 ...
- 【腾讯优测干货分享】Android内存泄漏的简单检查与分析方法
本文来自于Dev Club 开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57d14047603a5bf1242ad01b 导语 内存泄漏问题大约是An ...