JAVA入门学习之GUI编程思想——day01
GUI编程
什么是GUI???图形化编程
组件
- 窗口
- 弹窗
- 按钮
- 文本框
- 图片
- 事件
- .....
GUI的核心:AWT Swing
GUI编程的缺陷:
1.界面不美观
2.需要jre环境
虽然GUI编程已经快接近淘汰了,但我们要学习其中的MVC架构的思想
1.AWT介绍
AWT:abstract windows tools
1.包含很多类和窗口
2.包含很多组件:按钮、文本框、窗口

2.第一个Frame窗口
在Java中可以通过Frame类创建一个Frame窗口
import java.awt.*;
3.简单创建一个Frame窗口
import java.awt.*;
public class DemoWindows {
public static void main(String[] args){
Frame frame = new Frame("First");
//设置窗口可视
frame.setVisible(true);
//设置窗口颜色
frame.setBackground(new Color(120, 61, 61));
//设置窗口不可拉伸
frame.setResizable(false);
//设置窗口大小
frame.setSize(200,200);
//设置窗口位置
frame.setLocation(200,200);
}
}
根据上述代码可以发现窗口关闭不了除非停止Java程序,此操作将在后续提到
4.Panel面板
面板不能单独存在!!!
通过Panel类可以创建一个面板,设置其面板大小、面板颜色、面板在窗口中的位置等,后续可以讲其他组件添加进入面板中,再将面板添加到窗口中
以下代码将提前预习监听事件,将窗口可关闭功能加入其中
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class TestPanel {
public static void main(String[] args){
//创建一个panel面板
Panel panel = new Panel();
//创建一个frame窗口
Frame frame = new Frame("PanelTest");
//设置窗口属性
frame.setLayout(null); // 设置布局为null
frame.setBounds(200,200,500,500);
frame.setBackground(new Color(200,100,100));
//设置面板属性
panel.setBounds(100,100,300,300);
panel.setBackground(Color.GRAY);
//panel.setVisible(true); 可设置可不设置
//在窗口中添加一个面板
frame.add(panel);
frame.setVisible(true);
frame.setResizable(false);
//编写关闭窗口事件
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
System.exit(0); //退出程序
}
});
}
}
JAVA入门学习之GUI编程思想——day01的更多相关文章
- java基础学习总结——GUI编程(一)
一.AWT介绍
- java基础学习总结——GUI编程(一) 还未仔细阅读
一.AWT介绍
- java基础学习总结——GUI编程(二)
一.事件监听
- java基础学习总结——GUI编程(二) 未学习
一.事件监听
- 关于Java、Python、Go编程思想的不同
Go学习笔记 - 关于Java.Python.Go编程思想的不同 看了两周七牛团队翻译的<Go语言程序设计>,基本上领略到了Go语言的魅力.学习一个语言,语法什么的任何人都是很容易学会,难 ...
- Java入门学习路线目录索引
原创 Java入门学习路线目录索引 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/One_ ...
- java入门学习(1)一简介及其基础特点
分类: java基础 1.为什么java如此流行,为什么历史选择了它? 因为它拥有全新的编程思想,更接近人们的语言习惯,由于其编译器把代码编译成字节码,然后再不同的平台上运行分别用不同的虚拟机去解释字 ...
- Java入门学习知识点汇总
Java入门重要知识点在这里总结一下,以方便日后复习,这部分内容主要有:变量和常量,常用的运算符,流程控制语句,数组,方法这些内容 一.变量和常量 1.Java关键字 先贴张图: 所有关键字区分大小写 ...
- Go学习笔记 - 关于Java、Python、Go编程思想的不同
***看了两周七牛团队翻译的<Go语言程序设计>,基本上领略到了Go语言的魅力.学习一个语言,语法什么的任何人都是很容易学会,难就难在充分领略到这门编程语言的思想.*** ## 面向对象 ...
- java入门--学习地址
发现java很多地方都在用,纠结很久该学python还是java. 目前先已python为主,java可以有初步了解能看懂代码就行. --------------------------------- ...
随机推荐
- java字符串与json互转
开发中经常遇到将字符串转成json和字符串转成json属组的方法,网上搜到的方法,好多都是不好用的,今天这里记录一下方便自己今后查看,也提供给需要的人. 依赖: <!-- 处理json --&g ...
- 引入阿里在线图标(微信小程序)
https://www.bilibili.com/video/BV1WJ41197sD?p=49
- 05-Shell索引数组变量
1.介绍 Shell 支持数组(Array),数组是若干数据的集合,其中的每一份数据都称为数组的元素. 注意Bash Shell 只支持一维数组,不支持多维数组. 2.数组的定义 2.1 语法 在 S ...
- Redis不同版本性能研究
Redis不同版本性能研究 背景 前期同事遇到了一个大key的慢查询. 前提条件是: 一个 60万key的环境里面. 有一个 260万元素的set类型的key 产品经常会进行 smember key ...
- [转帖]058、集群优化之PD
PD调度基本概念 调度流程 调度中还有这还缺来了merge,例如合并空region. store: 基本信息,容量,剩余空间,读写流量等 region: 范围,副本分布,副本状态,数据量,读写流量等 ...
- [转帖]针对容器的nginx优化
针对容器的nginx优化 本篇文章介绍了 Nginx 在容器内使用遇到的CPU核数获取问题以及对应的解决方法. 回顾上篇文章:TCP 半连接队列和全连接队列 背景 容器技术越来越普遍,很多公司已经将容 ...
- [转帖]SQL Server数据库存储总结
SQL Server数据库存储文件类型:数据文件和日志文件.数据文件以页面作为存储单元存储数据. 页面:即数据页面,数据页(Page).是系统在磁盘间中分配的一段大小为8k的连续空间. 文件头(Fil ...
- [转帖]字节跳动开源 Shmipc:基于共享内存的高性能 IPC
https://maimai.cn/article/detail?fid=1780832041&efid=WeW8ji-LiPaXA8QER_Q1YQ 简介 CloudWeGo - Shmip ...
- systemctl 关闭图形界面的办法
开机以命令模式启动,执行: systemctl set-default multi-user.target 开机以图形界面启动,执行: systemctl set-default graphica ...
- K8S 使用loki 监控 应用日志的搭建办法
1. 背景 这几天一直在用k8s部署分SU的测试环境,开发反馈看日志比较麻烦. 昨天晚上在家里本来想搭建ELK 发现比较重, 又说有一个比较轻量级的 loki 可以实现使用grafana进行监控和查看 ...