一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java編程swing組件JLabel詳解以及使用示例

Java編程swing組件JLabel詳解以及使用示例

2021-03-16 13:25玉開Sir Java教程

這篇文章主要介紹了Java編程swing組件JLabel詳解以及使用示例,具有一定借鑒價值,需要的朋友可以參考下

JLabel 對象可以顯示文本、圖像或同時顯示二者。可以通過設置垂直和水平對齊方式,指定標簽顯示區中標簽內容在何處對齊。默認情況下,標簽在其顯示區內垂直居中對齊。默認情況下,只顯示文本的標簽是開始邊對齊;而只顯示圖像的標簽則水平居中對齊。 還可以指定文本相對于圖像的位置。默認情況下,文本位于圖像的結尾邊上,文本和圖像都垂直對齊。

 

構造方法介紹:

JLabel() 創建無圖像并且其標題為空字符串的 JLabel。

JLabel(Icon image) 創建具有指定圖像的 JLabel 實例。

JLabel(Icon image, int horizontalAlignment) 創建具有指定圖像和水平對齊方式的 JLabel 實例。

JLabel(String text) 創建具有指定文本的 JLabel 實例。

JLabel(String text, Icon icon, int horizontalAlignment) 創建具有指定文本、圖像和水平對齊方式的 JLabel 實例。

JLabel(String text, int horizontalAlignment) 創建具有指定文本和水平對齊方式的 JLabel 實例。

 

常用方法:

getHorizontalAlignment() 返回標簽內容沿 X 軸的對齊方式。

getHorizontalTextPosition() 返回標簽的文本相對其圖像的水平位置。

getIcon() 返回該標簽顯示的圖形圖像(字形、圖標)。 getText() 返回該標簽所顯示的文本字符串。

setHorizontalAlignment(int alignment) 設置標簽內容沿 X 軸的對齊方式。

setHorizontalTextPosition(int textPosition) 設置標簽的文本相對其圖像的水平位置。

setIcon(Icon icon) 定義此組件將要顯示的圖標。

setText(String text) 定義此組件將要顯示的單行文本。 setUI(LabelUI ui) 設置呈現此組件的 L&F 對象。

setVerticalAlignment(int alignment) 設置標簽內容沿 Y 軸的對齊方式。

setVerticalTextPosition(int textPosition) 設置標簽的文本相對其圖像的垂直位置。

 

在JLabel中增加圖片和文本

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.awt.FlowLayout;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
public class MixingIconLabel {
    public static void main(String[] args) {
        JFrame.setDefaultLookAndFeelDecorated(true);
        JFrame frame = new JFrame();
        frame.setTitle("JLabel Test");
        frame.setLayout(new FlowLayout());
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        ImageIcon imageIcon = new ImageIcon("yourFile.gif");
        JLabel label = new JLabel("Mixed", imageIcon, SwingConstants.RIGHT);
        frame.add(label);
        frame.pack();
        frame.setVisible(true);
    }
}

 

JLabel中增加HTML文本

?
1
2
3
4
5
6
7
8
9
10
11
12
import javax.swing.JFrame;
import javax.swing.JLabel;
public class HTMLLabel {
    public static void main(String[] a) {
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JLabel label = new JLabel("<html>bold <br> plain</html>");
        frame.add(label);
        frame.setSize(300, 200);
        frame.setVisible(true);
    }
}

 

重寫JLabel

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.Serializable;
import javax.swing.JLabel;
public class Colors extends JLabel implements Serializable {
    transient private Color color;
    // not persistent
    private Boolean rectangular;
    // is persistent
    public Colors() {
        addMouseListener(new MouseAdapter() {
            public void mousePressed(MouseEvent me) {
                change();
            }
        }
        );
        rectangular = false;
        setSize(200, 100);
        change();
    }
    public Boolean getRectangular() {
        return rectangular;
    }
    public void setRectangular(Boolean flag) {
        this.rectangular = flag;
        repaint();
    }
    public void change() {
        color = randomColor();
        repaint();
    }
    private Color randomColor() {
        int r = (int) (255 * Math.random());
        int g = (int) (255 * Math.random());
        int b = (int) (255 * Math.random());
        return new Color(r, g, b);
    }
    public void paint(Graphics g) {
        Dimension d = getSize();
        int h = d.height;
        int w = d.width;
        g.setColor(color);
        if (rectangular) {
            g.fillRect(0, 0, w - 1, h - 1);
        } else {
            g.fillOval(0, 0, w - 1, h - 1);
        }
    }
}

 

將JLabel增加到JScrollPane中便于顯示大圖片

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
public class ScrollPaneFrame {
    public static void main(String[] args) {
        JFrame frame = new JFrame();
        JLabel image = new JLabel(new ImageIcon("A.jpg"));
        frame.getContentPane().add(new JScrollPane(image));
        frame.setSize(300, 300);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
    }
}

 

JLabel中增加unicode編碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Unicode {
    public static void main(String args[]) {
        UnicodeJFrame unicodeJFrame = new UnicodeJFrame();
        unicodeJFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        unicodeJFrame.setSize(350, 250);
        unicodeJFrame.setVisible(true);
    }
}
class UnicodeJFrame extends JFrame {
    public UnicodeJFrame() {
        super("Demonstrating Unicode");
        setLayout(new GridLayout(8, 1));
        JLabel englishJLabel = new JLabel("/u0057/u0065/u006C/u0063"
            + "/u006F/u006D/u0065/u0020/u0074/u006F/u0020Unicode/u0021");
        englishJLabel.setToolTipText("This is English");
        add(englishJLabel);
        JLabel chineseJLabel = new JLabel("/u6B22/u8FCE/u4F7F/u7528" + "/u0020/u0020Unicode/u0021");
        chineseJLabel.setToolTipText("This is Traditional Chinese");
        add(chineseJLabel);
        JLabel cyrillicJLabel = new JLabel("/u0414/u043E/u0431/u0440"
            + "/u043E/u0020/u043F/u043E/u0436/u0430/u043B/u043E/u0432"
            + "/u0430/u0422/u044A/u0020/u0432/u0020Unicode/u0021");
        cyrillicJLabel.setToolTipText("This is Russian");
        add(cyrillicJLabel);
        JLabel frenchJLabel = new JLabel("/u0042/u0069/u0065/u006E/u0076"
            + "/u0065/u006E/u0075/u0065/u0020/u0061/u0075/u0020Unicode/u0021");
        frenchJLabel.setToolTipText("This is French");
        add(frenchJLabel);
        JLabel germanJLabel = new JLabel("/u0057/u0069/u006C/u006B/u006F"
            + "/u006D/u006D/u0065/u006E/u0020/u007A/u0075/u0020Unicode/u0021");
        germanJLabel.setToolTipText("This is German");
        add(germanJLabel);
        JLabel japaneseJLabel = new JLabel("Unicode/u3078/u3087/u3045" + "/u3053/u305D/u0021");
        japaneseJLabel.setToolTipText("This is Japanese");
        add(japaneseJLabel);
        JLabel portugueseJLabel = new JLabel("/u0053/u00E9/u006A/u0061"
            + "/u0020/u0042/u0065/u006D/u0076/u0069/u006E/u0064/u006F/u0020" + "Unicode/u0021");
        portugueseJLabel.setToolTipText("This is Portuguese");
        add(portugueseJLabel);
        JLabel spanishJLabel = new JLabel("/u0042/u0069/u0065/u006E"
            + "/u0076/u0065/u006E/u0069/u0064/u0061/u0020/u0061/u0020" + "Unicode/u0021");
        spanishJLabel.setToolTipText("This is Spanish");
        add(spanishJLabel);
    }
}

 

總結

以上就是本文關于Java編程swing組件JLabel詳解以及使用示例的全部內容,希望對大家有所幫助。如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

原文鏈接:http://outofmemory.cn/code-snippet/1121/swing-JLabel-explain-in-detail-yiji-usage-shili

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 小柔的性放荡羞辱日记动漫 | 日韩一级生活片 | 91在线亚洲精品一区 | 亚洲精品色综合久久 | 18无删减羞羞网站动漫 | 关晓彤一级做a爰片性色毛片 | 国内精品一区二区三区东京 | heyzo在线播放 | 波多野结衣黑人系列在线观看 | 成人免费淫片95视频观看网站 | 精品亚洲综合在线第一区 | 午夜福利08550 | 女人把私密部位张开让男人桶 | 国产视频中文字幕 | 日本xxxx在线视频免费 | 扒开腚眼子视频大全 | 四虎免费在线视频 | 性欧美4khdxxxx| 亚州笫一色惰网站 | 精品国产国产精2020久久日 | 午夜成私人影院在线观看 | 九九精品影院 | 久久综合久久伊人 | 欧美春宫 | 窝窝影院午夜色在线视频 | 亚洲免费在线看 | 紧身裙女教师波多野结衣 | 日韩欧美中文字幕出 | 色啪久久婷婷综合激情 | 欧美日韩一区二区三区久久 | 吉泽明步高清无码中文 | 国产亚洲精品美女久久久 | 91免费精品国自产拍在线可以看 | 国产日产欧产精品精品软件 | 国产实拍会所女技师在线 | 9自拍视频在线观看 | 无限在线观看视频大全免费高清 | 国产在亚洲线视频观看 | 国产日产韩产麻豆1区 | 美女大鸡鸡 | 成人国产精品视频频 |