Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

เราจะหมุนข้อความ JLabel ใน Java ได้อย่างไร


A JLabel เป็นคลาสย่อยของ JComponent คลาสและอ็อบเจ็กต์ของ JLabel จัดเตรียมข้อความคำสั่งหรือข้อมูลเกี่ยวกับ GUI JLabel สามารถแสดงข้อความแบบอ่านอย่างเดียวบรรทัดเดียว รูปภาพ หรือทั้ง ข้อความ และ ภาพ . JLabel สามารถสร้าง PropertyChangeListener . ได้อย่างชัดเจน อินเตอร์เฟซ.

โดยค่าเริ่มต้น JLabel สามารถแสดงข้อความในตำแหน่งแนวนอน และเราสามารถ หมุนข้อความ JLabel โดยใช้ rotate() วิธีการของ Graphics2D คลาสภายใน paintComponent()

ไวยากรณ์

public abstract void rotate(double theta, double x, double y)

ตัวอย่าง

import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
public class RotateJLabelTest extends JFrame {
   public RotateJLabelTest() {
      setTitle("Rotate JLabel");
      JLabel label = new RotateLabel("TutorialsPoint");
      add(label, BorderLayout.CENTER);
      setSize(400, 300);
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   private class RotateLabel extends JLabel {
      public RotateLabel(String text) {
         super(text);
         Font font = new Font("Verdana", Font.ITALIC, 10);
         FontMetrics metrics = new FontMetrics(font){};
         Rectangle2D bounds = metrics.getStringBounds(text, null);
         setBounds(0, 0, (int) bounds.getWidth(), (int) bounds.getHeight());
      }
      @Override
      public void paintComponent(Graphics g) {
         Graphics2D gx = (Graphics2D) g;
         gx.rotate(0.6, getX() + getWidth()/2, getY() + getHeight()/2);
         super.paintComponent(g);
      }
   }
   public static void main(String[] args) {
      new RotateJLabelTest();
   }
}

ผลลัพธ์

เราจะหมุนข้อความ JLabel ใน Java ได้อย่างไร