创建图形化界面思路:

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);//将按钮添加到窗口内;
} }

运行效果如下:

注意:详见Borderlayout(边界布局管理器)

******************************

上面这样肯定不好看,我们对其设置下布局方式来进行优化下。

功能实现如下几点:

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窗口的更多相关文章

  1. 2.JAVA之GUI编程布局

    布局管理器 容器中的组件排放方式,就是布局 常见的布局管理器: **************************************************** 1.FlowLayout(流式 ...

  2. 4.JAVA之GUI编程事件监听机制

    事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...

  3. 5.JAVA之GUI编程窗体事件

    我们回顾下第三篇时的内容: 在3.JAVA之GUI编程Frame窗口中窗体是无法直接关闭的,想要关闭须进程管理器结束进程方式关掉. 现在我们就来解决下这个问题. ******************* ...

  4. 6.JAVA之GUI编程Action事件

    功能:单击一个按钮实现关闭窗口: import java.awt.*; import java.awt.event.*; public class StudyAction { // 定义该图形所需的组 ...

  5. 7.JAVA之GUI编程鼠标事件

    鼠标事件: 功能: 1.基本窗体功能实现 2.鼠标移动监听,当鼠标移动到按钮上时,触发打印事件. 3.按钮活动监听,当按钮活动时,触发打印事件. 4.按钮被单击时触发打印事件. 源码如下: impor ...

  6. 8.JAVA之GUI编程键盘码查询器

    程序使用说明: 1.本程序由于是java代码编写,所以运行需安装jdk并配置好环境变量. 2. 复制java代码到记事本内,另存为Keyboard_events.java: 3.复制批处理代码到记事本 ...

  7. 13.JAVA之GUI编程将程序打包jar

    jar基本命令: 目标:将下列MyMenuDemo.java代码打包成jar. 方法如下: 1.把java代码放到d:\myclass目录下. 2.按下快捷键ctrl+r,打开运行窗口,输入cmd后回 ...

  8. Java之GUI编程(一)

    GUI全称Graphical User Interfaces,意为图形用户户界面,又称为图形用户接口.GUI指的就是採用图形方式显示的计算机操作用户界面,打个例如吧.我们点击QQ图标,就会弹出一个QQ ...

  9. java基础—GUI编程(一)

    一.AWT介绍

随机推荐

  1. 背后的故事之 - 快乐的Lambda表达式(一)

    快乐的Lambda表达式(二) 自从Lambda随.NET Framework3.5出现在.NET开发者眼前以来,它已经给我们带来了太多的欣喜.它优雅,对开发者更友好,能提高开发效率,天啊!它还有可能 ...

  2. OpenCASCADE Expression Interpreter by Flex & Bison

    OpenCASCADE Expression Interpreter by Flex & Bison eryar@163.com Abstract. OpenCASCADE provide d ...

  3. .net 分布式架构之业务消息队列

    开源QQ群: .net 开源基础服务  238543768 开源地址: http://git.oschina.net/chejiangyi/Dyd.BusinessMQ ## 业务消息队列 ##业务消 ...

  4. redis集成到Springmvc中及使用实例

    redis是现在主流的缓存工具了,因为使用简单.高效且对服务器要求较小,用于大数据量下的缓存 spring也提供了对redis的支持: org.springframework.data.redis.c ...

  5. ASP.NET Core 中文文档 第四章 MVC(4.3)过滤器

    原文:Filters 作者:Steve Smith 翻译:刘怡(AlexLEWIS) 校对:何镇汐 ASP.NET MVC 过滤器 可在执行管道的前后特定阶段执行代码.过滤器可以配置为全局有效.仅对控 ...

  6. STM32F429 LCD程序移植

    STM32F429自带LCD驱动器,这一具有功能给我等纠结于屏幕驱动的程序员带来了很大的福音.有经验的读者一定有过这样的经历,用FSMC驱动带由控制器的屏幕时候,一旦驱动芯片更换,则需要重新针对此驱动 ...

  7. C++整数转字符串的一种方法

    #include <sstream> //ostringstream, ostringstream::str() ostringstream stream; stream << ...

  8. 满堂红CIO邓劲翔:房屋中介突围

    人脸识别.客户关系管理进度监控.业务流程实时监控.网站访问人数及流量实时监控等实际企业应用场景淋漓尽致.羽羽如生的以大屏幕上图表形式展现在人们面前,如果你不去继续询问,你不会知道这是一家才刚刚在房地产 ...

  9. Android Weekly Notes Issue #236

    Android Weekly Issue #236 December 18th, 2016 Android Weekly Issue #236 本期内容包括: Google的物联网平台Android ...

  10. WINDOWS系统下MYSQL安装过程中的注意事项

    1.首先MySQL的安装方式有两种:一种是MSI安装方式,很简单就像安装Windows软件一样.另外一种就是ZIP安装方式.这种相对而言比较麻烦.新手推荐MSI安装方式. 安装方式有以下两种: MSI ...