package com.graphics; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel...* 由于Graphics2D类是Graphics类的扩展,也是推荐使用的java绘图类 * 所以本章主要介绍使用Graphics2D类实现JAVA绘图 * * 3:Graphics类使用的不同的方法实现不同的绘制...package com.graphics; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.Shape; import...java.awt.geom.Ellipse2D; import java.awt.geom.Rectangle2D; import javax.swing.JFrame; import javax.swing.JPanel
文章目录 一、AWT 简介 二、AWT 核心类继承体系 一、AWT 简介 ---- Java 中 使用 AWT 和 Swing 进行 图形界面开发 , AWT 是 抽象窗口工具集 , Abstract...Window Toolkit , AWT 功能比较简单 , Swing 提供了更加丰富的界面组件库 ; 通过 AWT 创建按钮 , 并设置对应的按钮点击事件 , 但是 具体的在 Windows 或...Linux 平台创建按钮的操作 并 不是由 AWT 完成的 , 而是 由 JVM 调用本地平台的 API 进行创建的 , AWT 只是 抽象窗口工具集 , 具体的图形界面是由 Java 虚拟机调用本地...API 实现的 ; 由于 AWT 创建的界面都是由 JVM 调用本地 API 实现 , 因此创建的 图形界面风格 , 都与 Java 程序运行的平台相关 , 在 Windows 系统中运行 , 显示的是...Windows 界面的风格 , 在 Linux 系统运行 , 显示的是 Linux 界面风格 ; 二、AWT 核心类继承体系 ---- AWT 核心类继承体系 : AWT 中最终要的两个类是 Component
0x02 AWT体系 所有和 AWT 编程相关的类都放在 java.awt 包以及它的子包中, AWT 编程中有两个基类 :Component和 MenuComponent。...代码实例: package com.test; import javax.swing.*; import java.awt.*; import java.awt.event.WindowAdapter....*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter....*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter...java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent
: 演示代码: import javax.swing.*; import java.awt.*; public class BasicComponentDemo { Frame frame...; import java.awt.event.ActionListener; import java.awt.*; public class DialogDemo1 { public static...; import java.awt.event.ActionListener; import javax.swing.Box; import javax.swing.JButton; import java.awt...获取被打开或保存文件的绝对路径 String getFile() 获取被打开或保存文件的文件名 案例2: 使用 Frame、Button和FileDialog完成下图效果: 演示代码2: import java.awt....*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class FileDialogTest
文章目录 一、AWT 常用组件 二、AWT 常用组件示例 一、AWT 常用组件 ---- AWT 常用组件 : Frame : 窗口组件 ; Label : 标签组件 , 可现显示文本内容 ; TextArea...ScrollBar : 滑动条组件 , 使用滑动条时需要指定其 方向 , 初始值 , 最大值 , 最小值 等信息 ; ScrollPan : 带滚动条的容器组件 , 可水平滚动 或 垂直滚动 ; 二、AWT...常用组件示例 ---- 代码示例 : import javax.swing.*; import java.awt.*; public class HelloAWT { public static...void main(String[] args) { // Frame 默认的布局管理器就是 BorderLayout Frame frame = new Frame("AWT
文章目录 一、AWT 绘图窗口闪烁问题 二、完整代码示例 画图的过程是有时间消耗的 , 先清屏 , 再画图 , 清屏到画图完毕之前 界面是空白的 , 这是闪烁产生的原因 ; 引入一个图片缓冲区 , 绘制的时候向缓冲区绘制..., 然后直接将缓冲区同步到画布上 , 这样就避免了界面空白情况 , 保证始终界面上有内容 ; 这就是双缓冲机制的原理 ; 一、AWT 绘图窗口闪烁问题 ---- 使用 Graphics 第一次绘图 完成后..., 如果在循环中 持续调用 Canvas#repaint() 函数刷新界面 , 代码如下 : import java.awt.*; public class HelloAWT { public...界面中一直在闪烁 ; 每次刷新都闪烁一次 ; 参考 【Java AWT 图形界面编程】Canvas 组件中使用 Graphics 绘图 ① ( AWT 绘图线程 | Component 绘图函数 )...将缓冲区中的图片绘制到窗口界面中 g.drawImage(mBufferedImage, 0, 0, null); } 二、完整代码示例 ---- 代码示例 : import java.awt
.*; import java.awt.*; public class HelloAWT { public static void main(String[] args) throws InterruptedException...frame.pack(); frame.setVisible(true); } } 报错信息如下 : Exception in thread "main" java.awt.AWTError...(BoxLayout.java:249) at javax.swing.BoxLayout.addLayoutComponent(BoxLayout.java:282) at java.awt.Container.addImpl...(Container.java:1127) at java.awt.Container.add(Container.java:417) at HelloAWT.main(HelloAWT.java:...实例改为 Panel 对象即可 ; 三、解决方案 ---- 按照上述问题分析 , 将 Frame 实例改为 Panel 对象 ; 修改后的代码 : import javax.swing.*; import java.awt
使用到java的awt做个最简单的截屏小程序。 项目截图: 说明:图片中的马赛克不是本程序的。
八、ScrollPane 可滚动容器示例 一、AWT 简介 ---- Java 中 使用 AWT 和 Swing 进行 图形界面开发 , AWT 是 抽象窗口工具集 , Abstract Window...平台创建按钮的操作 并 不是由 AWT 完成的 , 而是 由 JVM 调用本地平台的 API 进行创建的 , AWT 只是 抽象窗口工具集 , 具体的图形界面是由 Java 虚拟机调用本地 API...实现的 ; 由于 AWT 创建的界面都是由 JVM 调用本地 API 实现 , 因此创建的 图形界面风格 , 都与 Java 程序运行的平台相关 , 在 Windows 系统中运行 , 显示的是 Windows...设置窗口可见 frame.setVisible(true); 完整代码示例 : import java.awt.*; public class HelloAWT { public static...屏幕中独立存在 , 必须 依赖于 Frame 窗口而存在 ; 如果要 显示 ScrollPane 可滚动容器 , 需要 将其添加到 Frame 窗口中 才能显示出来 ; 代码示例 : import java.awt
(需要的在下方留言,我再加上) 解决方法: 在tomcat/bin/catalina.sh 中增加JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true" 配置即可...JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true" 如下图: ?
一、AWT 绘图线程 在 AWT 绘图程序中 , 有一个专门的线程用于绘制界面的线程 , AWT 绘制线程 ; AWT 绘制线程 , 默认处于 等待状态 ; 当组件 第一次显示时 , 会 调用 paint...(Graphics g) 函数 , 绘制组件上的所有内容 , 绘制完毕后 , AWT 绘制线程又 恢复 等待状态 ; 如果 组件 不是第一次展示 , 而是组件内容进行了修改 , 此时就需要 在 AWT.../java/painting-140037.html">在AWT和Swing中绘画。...* * 注意:有关AWT和Swing使用的绘制机制的更多信息, * 包括如何编写最有效的绘制代码的信息,请参见AWT和Swing中的绘制。.../technetwork/java/painting-140037.html">在AWT和Swing中绘画。
* @see java.awt.Color * @see java.awt.Graphics#getColor */ public abstract...* @see java.awt.Graphics#getFont * @see java.awt.Graphics#drawString(java.lang.String...* @see java.awt.Graphics#fillRect * @see java.awt.Graphics#clearRect */...* 否则,drawImage返回false,当更多的图像可用或是时候绘制另一帧动画时, * 加载图像的进程通知指定的图像观察者。...* @see java.awt.Image * @see java.awt.image.ImageObserver * @see java.awt.image.ImageObserver
文章目录 一、Frame 窗口中进行自定义布局 二、AWT 中常用的布局容器 一、Frame 窗口中进行自定义布局 ---- 在 【Java AWT 图形界面编程】LayoutManager 布局管理器总结..., 每个布局组件的绘制位置以及组件大小 , 都需要自己进行绘制 ; 如 : 在窗口中设置 5 个布局, 分别在 4 个角和 中心位置显示 , 每个布局显示不同的颜色 ; 代码示例 : import java.awt...throws InterruptedException { // Frame 默认的布局管理器就是 BorderLayout Frame frame = new Frame("AWT...(100, 100, 100, 100); frame.add(panel5); frame.setVisible(true); } } 运行结果 : 二、AWT...中常用的布局容器 ---- 在 AWT 图形界面编程 中 , 最常见的 三种 Container 容器就是 Frame , Dialog , Panel ; Dialog 是对话框 , 只有使用对话框时
当使用eclipse编写窗体程序时,开头加入如下代码: import java.awt.*; import javax.swing.*; 会出现这样的提示: 解决方法也很简单,只需要在module-info.java...中加入该代码: requires java.desktop; 怎么样,问题解决了吗
# java.awt 画矩形踩坑 本来使用Graphics2D的drawRect()方法画图的,但是出现了下边框过粗,不得已 使用了画线的方法,四个边框,单独划线, 这里要注意坐标轴和线的宽度
hgap; this.vgap = vgap; } 三、BorderLayout 代码示例 ---- 1、BorderLayout 基本用法代码示例 代码示例 : import java.awt...public class HelloAWT { public static void main(String[] args) { Frame frame = new Frame("AWT...拖动改变该窗口的大小 , 发现 NORTH 和 SOUTH 的高度是不变的 , EAST 和 WEST 的宽度是不变的 ; 2、BorderLayout 区域占用代码示例 代码示例 : import java.awt...public class HelloAWT { public static void main(String[] args) { Frame frame = new Frame("AWT...frame.pack(); frame.setVisible(true); } } 执行结果 : 3、BorderLayout 同一区域显示多个组件代码示例 代码示例 : import java.awt
点击上方 好好学java ,选择 星标 公众号 重磅资讯、干货,第一时间送达 今日推荐:硬刚一周,3W字总结,一年的经验告诉你如何准备校招!...个人原创100W+访问量博客:点击前往,查看更多 作者:巨人大哥 来源:cnblogs.com/jurendage/p/9219041.html 序 目的:Java开源生鲜电商平台-Java后端生成Token...; import java.security.NoSuchAlgorithmException; import java.util.Random; import sun.misc.BASE64Encoder...; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; /** * OAuthTokenUtils...; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * OAuthTokenController
[SOLVED] Caused by: java.awt.HeadlessException when trying to create a SWING/AWT frame from Spring Boot...create a Swing frame from the component that is the entry point of your app, you will get Caused by: java.awt.HeadlessException
BoxLayout 布局代码示例 1、BoxLayout 布局垂直排列代码示例 2、BoxLayout 布局水平排列代码示例 一、BoxLayout 布局 ---- BoxLayout 布局 不是 AWT...target, int axis) 三、BoxLayout 布局代码示例 ---- 1、BoxLayout 布局垂直排列代码示例 代码示例 : import javax.swing.*; import java.awt....*; import java.beans.ConstructorProperties; public class HelloAWT { public static void main(String...frame.setVisible(true); } } 执行效果 : 拖动放大后的效果 : 2、BoxLayout 布局水平排列代码示例 代码示例 : import javax.swing.*; import java.awt....*; import java.beans.ConstructorProperties; public class HelloAWT { public static void main(String
领取专属 10元无门槛券
手把手带您无忧上云