


Java interface programming method to build a simple framework that can draw graphics
This article introduces the method of Java interface programming to build a simple framework that can draw graphics
Introduction: Use a total of 3.java files to build a simple interface programming framework.
The first file: NotHelloWorldComponent.java
//NotHelloWorldComponent.java import java.awt.*; import java.awt.geom.*; import javax.swing.*; public class NotHelloWorldComponent extends JComponent { public static final int MESSAGE_X = 75; //消息最左上角坐标 public static final int MESSAGE_Y = 75; //定义此界面的默认尺寸 private static final int DEFAULT_WIDTH = 300; private static final int DEFAULT_HEIGHT = 300; //paintComponent()会被系统自动调用,并且系统会自动传递一个Graphics对象给它 public void paintComponent(Graphics g){ //将g转型成Graphics2D对象,作为画笔,用来画2D图形 Graphics2D g2 = (Graphics2D)g; //创建一个Rectangle2D矩形对象 //如果有其他图形需要绘制,可以先在此处定义,再在下个部分用g2作为画笔画出来 double leftX = 50; double topY = 50; double width = 200; double height = 150; Rectangle2D rect = new Rectangle2D.Double(leftX, topY, width, height); //用画笔g2来绘制文字和矩形图形 g2.drawString("Not a hello, World program", MESSAGE_X, MESSAGE_Y); g2.draw(rect); } //覆盖此函数,设置首选的尺寸大小 @Override public Dimension getPreferredSize() { return new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHT); } }
The second .java file: NotHelloWorldFrame.java
import javax.swing.JFrame; public class NotHelloWorldFrame extends JFrame { public NotHelloWorldFrame(){ add(new NotHelloWorldComponent()); pack(); //使JFrame的大小适合其包含的组件的大小 } }
Description: JFrame is a frame class used to contain JPanel and JComponent.
The third .java file: NotHelloWorld.java
import java.awt.EventQueue; import javax.swing.JFrame; public class NotHelloWorld { public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { //使用匿名内部类技术,创建一个线程,用线程来创建窗口程序 public void run() { JFrame frame = new NotHelloWorldFrame(); frame.setTitle("NotHelloWorldFrame"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口的同时,程序结束,避免内存垃圾 frame.setVisible(true); //开启窗口可见 } }); } }
The above is the detailed content of Java interface programming method to build a simple framework that can draw graphics. For more information, please follow other related articles on the PHP Chinese website!

Start Spring using IntelliJIDEAUltimate version...

When using MyBatis-Plus or other ORM frameworks for database operations, it is often necessary to construct query conditions based on the attribute name of the entity class. If you manually every time...

Java...

How does the Redis caching solution realize the requirements of product ranking list? During the development process, we often need to deal with the requirements of rankings, such as displaying a...

Conversion of Java Objects and Arrays: In-depth discussion of the risks and correct methods of cast type conversion Many Java beginners will encounter the conversion of an object into an array...

Solutions to convert names to numbers to implement sorting In many application scenarios, users may need to sort in groups, especially in one...

Detailed explanation of the design of SKU and SPU tables on e-commerce platforms This article will discuss the database design issues of SKU and SPU in e-commerce platforms, especially how to deal with user-defined sales...

How to set the SpringBoot project default run configuration list in Idea using IntelliJ...


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

Dreamweaver Mac version
Visual web development tools

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software