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...Linux 平台创建按钮的操作 并 不是由 AWT 完成的 , 而是 由 JVM 调用本地平台的 API 进行创建的 , AWT 只是 抽象窗口工具集 , 具体的图形界面是由 Java 虚拟机调用本地...API 实现的 ; 由于 AWT 创建的界面都是由 JVM 调用本地 API 实现 , 因此创建的 图形界面风格 , 都与 Java 程序运行的平台相关 , 在 Windows 系统中运行 , 显示的是...Windows 界面的风格 , 在 Linux 系统运行 , 显示的是 Linux 界面风格 ; 二、AWT 核心类继承体系 ---- AWT 核心类继承体系 : AWT 中最终要的两个类是 Component...中的 LayoutManager 布局管理器 也是重要的 接口 , 实现如 : GridLayout , FlowLayout 等 , 用于 管理多个组件的布局排列 ; 在 AWT 中使用 Component
AWT是窗口框架,它从不同平台的窗口系统中抽取出共同组件 , 当程序运行时,将这些组件的创建和动作委托给程序所在的运行平台 。...使用AWT创建的图形界面应用和所在的运行平台有相同的界面风格 , 比如在 Windows 操作系统上,它就表现出 Windows 风格 ; 在 UNIX 操作系统上,它就表现出UNIX 风格 。...0x02 AWT体系 所有和 AWT 编程相关的类都放在 java.awt 包以及它的子包中, AWT 编程中有两个基类 :Component和 MenuComponent。....*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import...在GUI事件处理机制中涉及到4个重要的概念需要理解: 事件源(Event Source):操作发生的场所,通常指某个组件,例如按钮、窗口等; 事件(Event):在事件源上发生的操作可以叫做事件,GUI
最近在做Java版贪吃蛇的入门项目,过程中遇到窗口闪烁的问题总结。...AWT中的容器是一种特殊的组件,他可以包含其他组件,即可以把组件方法容器中。Container类是用来存放其他组件的Component类的子类,Frame类又是Component的子类。...二、Swing界面编程 随着Java的发展,AWT已经渐渐被淘汰,它已经不能适应发展的需要,不能满足开发功能强大的用户界面的需要。...这时Swing出现了,它是建立在AWT之上的组件集,在不同的平台上都能保持组件的界面样式,因此得到了非常广泛的应用。...---- 在Awt中对于窗体画布的重绘其条用顺序是repaint() —>update()—>paint(); 默认的upadate()中自带clearRect()方法,即清屏功能,程序运行时我们调用repaint
: 演示代码: 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.ActionEvent; import java.awt.event.ActionListener...; import javax.swing.Box; import javax.swing.JButton; import java.awt.*; public class DialogDemo2 {....*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class FileDialogTest
文章目录 一、AWT 常用组件 二、AWT 常用组件示例 一、AWT 常用组件 ---- AWT 常用组件 : Frame : 窗口组件 ; Label : 标签组件 , 可现显示文本内容 ; TextArea...按钮组件 ; Canvas : 画布组件 , 用于 绘图 的组件 ; Checkbox : 复选框组件 ; CheckboxGroup : 单选框组件 , 将多个复选框组合 , 变成单选选项 , 每个组合中只有一个...CheckBox 组件可以被选中 ; Choice : 下拉框组件 ; List : 列表组件 , 可添加多个列表项 ; Panel : 容器组件 , 该容器不能单独显示 , 必须放在窗口组件 如 Frame 中...常用组件示例 ---- 代码示例 : import javax.swing.*; import java.awt.*; public class HelloAWT { public static...// 自动设置 Frame 窗口合适的大小 frame.pack(); frame.setVisible(true); } } 执行效果 : 向多行文本框中输入文本
, 如果在循环中 持续调用 Canvas#repaint() 函数刷新界面 , 代码如下 : import java.awt.*; public class HelloAWT { public...界面中一直在闪烁 ; 每次刷新都闪烁一次 ; 参考 【Java AWT 图形界面编程】Canvas 组件中使用 Graphics 绘图 ① ( AWT 绘图线程 | Component 绘图函数 )...paint(buffer); // 将缓冲区中的图片绘制到窗口界面中 g.drawImage(mBufferedImage, 0..., 0, null); } 二、完整代码示例 ---- 代码示例 : import java.awt.*; public class HelloAWT { public static...paint(buffer); // 将缓冲区中的图片绘制到窗口界面中 g.drawImage(mBufferedImage, 0
.*; import java.awt.*; public class HelloAWT { public static void main(String[] args) throws InterruptedException...(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:..., 先创建 Frame 窗口 , 在 Frame 窗口中添加 Panel 作为第二层容器 , 最后为 Panel 设置 BoxLayout 布局管理器 , 让 Panel 中的容器线性排列 ; 使用 new...实例改为 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...界面的风格 , 在 Linux 系统运行 , 显示的是 Linux 界面风格 ; 二、AWT 核心类继承体系 ---- AWT 核心类继承体系 : AWT 中最终要的两个类是 Component 组件类...中的 LayoutManager 布局管理器 也是重要的 接口 , 实现如 : GridLayout , FlowLayout 等 , 用于 管理多个组件的布局排列 ; 在 AWT 中使用 Component
在开发的过程中使用到了java.jwt....*包下的东西,在开发工具中使用没问题,但是如果到了单独的tomcat或Linux里就会报:java.awt.headless null空异常,再去配置java mv?...非常麻烦,看我是如何解决的 在使用到java.jwt.*包类的里面添加如下代码,就可以了,本人亲自使用非常完美。...static { System.setProperty("java.awt.headless", "false"); }
异常出现场景: javaweb项目中有word、execl等文件生成或文件导出时;由于生成文件中存在图像、统计图等元素。在windows上可行,换到linux执行报错。 错误内容翻译: ?...异常分析: jvm无法初始化该类,由于本linux没有安装图形化界面;在web server(tomcat、nginx)中配置一下即可; 此处说一下tomcat,因为我实际操作的web server是tomcat...(需要的在下方留言,我再加上) 解决方法: 在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...绘制线程 中 调用 repaint() 函数 , 重绘组件 ; 在 repaint() 函数 中 , 先将组件进行隐藏 , 然后再 调用 update(Graphics g) 函数刷新组件 ; 在调用.../java/painting-140037.html">在AWT和Swing中绘画。...* * 注意:有关AWT和Swing使用的绘制机制的更多信息, * 包括如何编写最有效的绘制代码的信息,请参见AWT和Swing中的绘制。.../technetwork/java/painting-140037.html">在AWT和Swing中绘画。
文章目录 一、AWT 绘图步骤 二、Graphics 绘图常用 API 一、AWT 绘图步骤 ---- 在 AWT 绘图中 , Canvas 是绘图所在的画布 , Graphics 是绘图使用的画笔...paint(Graphics g) 函数 进行关联的 ; 然后 , 在自定义的 Canvas 组件 重写的 Component#paint(Graphics g) 函数中 , 先调用 Graphics...* @see java.awt.Graphics#getFont * @see java.awt.Graphics#drawString(java.lang.String...* 图像中的透明像素不会影响已经存在的像素。...* @see java.awt.Image * @see java.awt.image.ImageObserver * @see java.awt.image.ImageObserver
恰好我在项目中就遇到了这个问题,需要在Java程序中调用Python程序。...关于在Java中调用Python程序的实现,根据不同的用途可以使用多种不同的方法,在这里就将在Java中调用Python程序的方式做一个总结。...我在听到这个概念的时候一脸懵逼,不是说好的在Java中调用Python程序吗?这个Jython是什么鬼?难道是一个在Java中调用Python程序的组件或工具?...使用Jython能做什么 既然Jython是Python语言在Java平台的实现,是Java语言实现的,那么是否可以在Jython程序中调用Java,在Java中也能调用Jython呢?...3.2 Java调用Python程序实践 Java通过Jython API调用Python程序,有几种用法: (1)在Java中执行Python语句,相当于在Java中嵌入了Python程序,这种用法不常见
文章目录 一、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 是对话框 , 只有使用对话框时
# java.awt 画矩形踩坑 本来使用Graphics2D的drawRect()方法画图的,但是出现了下边框过粗,不得已 使用了画线的方法,四个边框,单独划线, 这里要注意坐标轴和线的宽度
当使用eclipse编写窗体程序时,开头加入如下代码: import java.awt.*; import javax.swing.*; 会出现这样的提示: 解决方法也很简单,只需要在module-info.java...中加入该代码: requires java.desktop; 怎么样,问题解决了吗
简介 之前的文章我们讲到了gradle的基本使用,使用gradle的最终目的就是为了构建java项目。今天本文将会详细的讲解如何在gradle中构建java项目。...两者在build.gradle中的不同在于plugins的不同,application的plugin是: plugins { id 'application' } 而library的plugin...testImplementation:在test的编译和运行时使用。 testRuntimeOnly: 在test的运行时使用。...} } test { java { srcDirs = ['test'] } } } 上面的代码中我们给srcDirs重新赋值了...我们需要将这些配置文件拷贝到特定的目标目录中。 默认情况下,gradle会拷贝src/[sourceSet]/resources 中的文件到目标文件夹中。
领取专属 10元无门槛券
手把手带您无忧上云