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. Web Components从技术解析到生态应用个人心得指北

    Web Components浅析 Web Components 是一种使用封装的.可重用的 HTML 标签.样式和行为来创建自定义元素的 Web 技术. Web Components 自己本身不是一个 ...

  2. Windows 平台 UTF-8 编码转换为本机编码

    std::string from_utf8(const std::string& src) { int n = MultiByteToWideChar(CP_UTF8, 0, src.c_st ...

  3. 每天学五分钟 Liunx 001 | 用户及用户组

    Liunx 文件权限 [root@controller-0 ~]# ll -al heihei -rw-r--r--. 1 root root 0 Mar 3 07:39 heihei 第一列 -rw ...

  4. docker 安装 nacos

    转载请注明出处: https://www.jianshu.com/p/54f6da71ac48

  5. SD 控制器集成需求和寄存器列表

    AHB Bus SD Bus DFT & Interrupt 控制集成需求 功能列表 控制器框架图 顶层信号 硬件集成环境 寄存器描述

  6. 问题--C中结构体想要嵌套一个该结构体指针,但是系统无法识别该类型

    代码如下: typedef struct_Person{ char name[64]; int age; //Person* person; //这里会出现一个问题,由于Person是在末尾定义的,那 ...

  7. HTTP 1.1响应码

    HTTP 1.1响应码 响应码和信息 含义 HttpURLConnection 1XX 信息 100 Continue 服务器准备接受请求主体,客户端应当发送请求主体:这允许客户端在请求中发送大量数据 ...

  8. MyBatis——第一个程序

    MyBatis1:初识 MyBatis第一个程序 流程:搭建环境–>导入MyBatis–>编写代码–>测试 1.创建一张User表. 关键字id.username.pwd 2.导入相 ...

  9. 一种基于Unix Domain和TCP连接的跨设备多进程间通信的方法

    ​ 前言: 在linux系统进程间通信的方式有消息,消息队列,管道,内存映射,套接字等多种方式. 在Android系统上进行进程间通信主要是使用Binder,其它的还有共享内存,管道,RPC和Unix ...

  10. [转帖][github]Chinese-LLaMA-Alpaca Public

    `https://github.com/ymcui/Chinese-LLaMA-Alpaca#%E6%A8%A1%E5%9E%8B%E4%B8%8B%E8%BD%BD` 以ChatGPT.GPT-4等 ...