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. vue 状态管理 一、状态管理概念和基本结构

    系列导航 vue 状态管理 一.状态管理概念和基本结构 vue 状态管理 二.状态管理的基本使用 vue 状态管理 三.Mutations和Getters用法 vue 状态管理 四.Action用法 ...

  2. 如何在编码阶段减少代码中的bug?

    前言 作为一名合格的程序员,不写bug是不可能的.如何花费最少的时间来修复bug呢? 在编码阶段借助一些静态分析工具往往可以事半功倍,减少代码中的bug. 静态分析工具能够在代码未运行的情况下分析源代 ...

  3. P5719 水题

    https://www.luogu.com.cn/problem/P5719 唠唠:别看这题很水,且只要求保留小数点后一位,倘若用float而不是double的话就无法AC,洛谷评测则只有40分.所以 ...

  4. 机器学习-线性分类-softmax回归 做多分类-10

    1. softmax回归 伯努利分布(0-1分布 二分类),我们采用Logistic回归(用sigmoid函数映射到 0-1之间 输出预测概率)建模. 那么我们应该如何处理多分类问题?(比如要进行邮件 ...

  5. P5733 【深基6.例1】自动修正

    1.题目介绍 2. 题解 2.1 字符串大小写转换 思路 str[i] -= 'a' -'A'; 注意这里转换方式,即减去偏移量(ASCII码表中,'a'在'A'前面,如果记不得偏移量,就直接写'a' ...

  6. Redis-逻辑库-select

  7. 在Winform系统开发中,使用MediatR来实现类似事件总线的消息处理

    MediatR是一款进程内的消息订阅.发布框架,可实现请求/响应.命令.查询.通知和事件的消息传递,解耦了消息处理器和消息之间耦合.提供了Send方法用于发布到单个处理程序.Publish方法发布到多 ...

  8. [转帖]linux audit审计(8)--开启audit对系统性能的影响

    https://www.cnblogs.com/xingmuxin/p/8875783.html 我们使用测试性能的工具,unixbench,它有一下几项测试项目: Execl Throughput ...

  9. [转帖]oswbb工具分析主机性能

    https://www.cnblogs.com/lkj371/p/15154268.html 在进行数据库故障分析和数据库例行扩容评估时,需要对数据库主机的CPU.内存.磁盘.网络进行负荷分析,常规处 ...

  10. [转帖]使用JAYDEBEAPI同时连接两个不同数据库(ORACLE+MYSQL)的问题

    jaydebeapi 同时连接两种数据库 在使用jaydebeapi只连接一种数据库时,是没问题的,但是如果需要同时连接两种数据库,比如同时连接oracle和mysql 例如以下测试代码:   imp ...