Рубрики
Без рубрики

Java AWT – Рисование прямоугольника, линии и круга

– Java AWT – Рисование прямоугольника, линии и круга

Автор оригинала: Datsabk.

Библиотеки java.awt представляют собой набор классов, предоставляемых Java для рисования фигур в окне. Аббревиатура AWT расшифровывается как Абстрактный оконный инструментарий. Сегодня библиотека была преобразована в огромный набор классов, который позволяет пользователю создавать целое приложение на основе графического интерфейса. Внешний вид этих классов зависит от платформы, на которой работает приложение.

Самыми основными из всех классов являются java.awt.geom библиотека, которая используется для рисования простых геометрических фигур. В этой статье рассматривается код для рисования простых фигур, таких как прямоугольник, линия, круг и т.д.

JFrame и JPanel JФрейм и JPanel являются классами, принадлежащими библиотекам javax.swing . Библиотека Swing создается поверх стека библиотек AWT. JFrame – это контейнер, подобный окну, который объединяет различные компоненты в окне. JPanel – это контейнер, который помещается внутри JFrame и помогает группировать компоненты.

Здесь, в приведенном ниже коде, мы использовали JФрейм и JPanel для удержания наших объектов формы.

Пример рисования AWT

Давайте теперь перейдем к основной теме рисования фигур с использованием библиотек AWT. На этой странице показаны различные классы, доступные для рисования фигур. Название классов четко объясняет, какие возможные фигуры можно нарисовать.

package com.mkyong;

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.Shape;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Line2D;
import java.awt.geom.RoundRectangle2D;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;

public class DrawShapes extends JFrame {

	private static final long serialVersionUID = 1L;

	public DrawShapes() {

		setSize(new Dimension(320, 320));
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setVisible(true);

		JPanel p = new JPanel() {
			@Override
			public void paintComponent(Graphics g) {
				Graphics2D g2 = (Graphics2D) g;
				Shape line = new Line2D.Double(3, 3, 303, 303);
				Shape rect = new Rectangle(3, 3, 303, 303);
				Shape circle = new Ellipse2D.Double(100, 100, 100, 100);
				Shape roundRect = new RoundRectangle2D.Double(20, 20, 250, 250, 5, 25);
				g2.draw(line);
				g2.draw(rect);
				g2.draw(circle);
				g2.draw(roundRect);
			}
		};
		setTitle("My Shapes");
		this.getContentPane().add(p);
	}

	public static void main(String arg[]) {

		SwingUtilities.invokeLater(new Runnable() {

			@Override
			public void run() {
				// TODO Auto-generated method stub
				new DrawShapes();
			}
		});
	}

}

Выход:

Приведенный выше код рисует линию, прямоугольник, круг и закругленный прямоугольник. Аргументы, обычно передаваемые конструкторам, включают координаты, ширину и высоту в случае линейных объектов. В случае округлых форм, таких как эллипс или Дуга, передаваемые аргументы включают координаты начала координат, а также ширину и высоту фигуры. При выполнении кода вывод получается в виде окна, как показано ниже.

Вы можете получить более подробную информацию о различных типах конструкторов и фигур, доступных в библиотеках AWT, используя приведенные ниже ссылки.

Рекомендации

  1. Доступные Классы Форм
  2. Более подробная информация о рисовании фигур
  3. Документы java класса формы

Оригинал: “https://mkyong.com/awt/java-awt-drawing-rectangle-line-and-circle/”