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

  1. java基础学习总结——GUI编程(一)

    一.AWT介绍

  2. java基础学习总结——GUI编程(一) 还未仔细阅读

    一.AWT介绍

  3. java基础学习总结——GUI编程(二)

    一.事件监听

  4. java基础学习总结——GUI编程(二) 未学习

    一.事件监听

  5. 关于Java、Python、Go编程思想的不同

    Go学习笔记 - 关于Java.Python.Go编程思想的不同 看了两周七牛团队翻译的<Go语言程序设计>,基本上领略到了Go语言的魅力.学习一个语言,语法什么的任何人都是很容易学会,难 ...

  6. Java入门学习路线目录索引

    原创 Java入门学习路线目录索引 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/One_ ...

  7. java入门学习(1)一简介及其基础特点

    分类: java基础 1.为什么java如此流行,为什么历史选择了它? 因为它拥有全新的编程思想,更接近人们的语言习惯,由于其编译器把代码编译成字节码,然后再不同的平台上运行分别用不同的虚拟机去解释字 ...

  8. Java入门学习知识点汇总

    Java入门重要知识点在这里总结一下,以方便日后复习,这部分内容主要有:变量和常量,常用的运算符,流程控制语句,数组,方法这些内容 一.变量和常量 1.Java关键字 先贴张图: 所有关键字区分大小写 ...

  9. Go学习笔记 - 关于Java、Python、Go编程思想的不同

    ***看了两周七牛团队翻译的<Go语言程序设计>,基本上领略到了Go语言的魅力.学习一个语言,语法什么的任何人都是很容易学会,难就难在充分领略到这门编程语言的思想.*** ## 面向对象 ...

  10. java入门--学习地址

    发现java很多地方都在用,纠结很久该学python还是java. 目前先已python为主,java可以有初步了解能看懂代码就行. --------------------------------- ...

随机推荐

  1. chage详解:liunx账户密码过期时处理

    公司安装elasticSearcher7.10.2版本时提示账户密码过期,可以做以下的处理方式: 一.查看账户的使用情况 chage -l baikang [root@localhost ~]# ch ...

  2. 银行个人住房贷款LPR办理流程-建行app

    8月底之前即将需完成银行的个人住房贷款定价基准利率的转换.选择"LPR+浮动利率"或者"固定利率". 以下举例建行app上办理方法给大家参考下. 办理方案: 一 ...

  3. 基于python的租房网站-房屋出租租赁系统(python+django+vue)

    该项目是基于python/django/vue开发的房屋租赁系统/租房平台,作为本学期的课程作业作品.欢迎大家提出宝贵建议. 功能介绍 平台采用B/S结构,后端采用主流的Python+Django进行 ...

  4. [转帖]Sql Server之旅——第六站 使用winHex利器加深理解数据页

    https://www.cnblogs.com/huangxincheng/p/4251770.html 这篇我来介绍一个winhex利器,这个工具网上有介绍,用途大着呢,可以用来玩数据修复,恢复删除 ...

  5. [转帖]Linux内存之Cache

    一. Linux内存之Cache 1.1.Cache 1.1.1.什么是Cache? Cache存储器,是位于CPU和主存储器DRAM之间的一块高速缓冲存储器,规模较小,但是速度很快,通常由SRAM( ...

  6. [转帖]Kafka中Topic级别配置

    https://www.cnblogs.com/moonandstar08/p/6139502.html 一.Kafka中topic级别配置 1.Topic级别配置 配置topic级别参数时,相同(参 ...

  7. [转帖]TLB缓存是个神马鬼,如何查看TLB miss?

    https://zhuanlan.zhihu.com/p/79607142 介绍TLB之前,我们先来回顾一个操作系统里的基本概念,虚拟内存. 虚拟内存 在用户的视角里,每个进程都有自己独立的地址空间, ...

  8. [转帖]已整理-shell内置字符串常用操作

    https://www.cnblogs.com/reachos/p/16803672.html bash 里面内置了一些常用的字符串操作: 1.字符串截取 a="abc" ${a: ...

  9. [转帖]TiDB 内存控制文档

    https://docs.pingcap.com/zh/tidb/stable/configure-memory-usage 目前 TiDB 已经能够做到追踪单条 SQL 查询过程中的内存使用情况,当 ...

  10. [转帖]Docker资源(CPU/内存/磁盘IO/GPU)限制与分配指南

    https://zhuanlan.zhihu.com/p/417472115 什么是cgroup? cgroups其名称源自控制组群(control groups)的简写,是Linux内核的一个功能, ...