最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2018年01月08日 11:55:44   作者:玉開Sir  
這篇文章主要介紹了Java編程swing組件JLabel詳解以及使用示例,具有一定借鑒價值,需要的朋友可以參考下

JLabel 對象可以顯示文本、圖像或同時顯示二者??梢酝ㄟ^設(shè)置垂直和水平對齊方式,指定標(biāo)簽顯示區(qū)中標(biāo)簽內(nèi)容在何處對齊。默認(rèn)情況下,標(biāo)簽在其顯示區(qū)內(nèi)垂直居中對齊。默認(rèn)情況下,只顯示文本的標(biāo)簽是開始邊對齊;而只顯示圖像的標(biāo)簽則水平居中對齊。 還可以指定文本相對于圖像的位置。默認(rèn)情況下,文本位于圖像的結(jié)尾邊上,文本和圖像都垂直對齊。

構(gòu)造方法介紹:

JLabel() 創(chuàng)建無圖像并且其標(biāo)題為空字符串的 JLabel。

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

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

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

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

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

常用方法:

getHorizontalAlignment() 返回標(biāo)簽內(nèi)容沿 X 軸的對齊方式。

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

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

setHorizontalAlignment(int alignment) 設(shè)置標(biāo)簽內(nèi)容沿 X 軸的對齊方式。

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

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

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

setVerticalAlignment(int alignment) 設(shè)置標(biāo)簽內(nèi)容沿 Y 軸的對齊方式。

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

在JLabel中增加圖片和文本

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文本

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

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中便于顯示大圖片

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編碼

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);
	}
}

總結(jié)

以上就是本文關(guān)于Java編程swing組件JLabel詳解以及使用示例的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:

Java編程實現(xiàn)swing圓形按鈕實例代碼

淺談標(biāo)簽和JLabel類構(gòu)造方法

Java圖形化界面設(shè)計之容器(JFrame)詳解

如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • Java進階:Struts多模塊的技巧

    Java進階:Struts多模塊的技巧

    Java進階:Struts多模塊的技巧...
    2006-12-12
  • Java導(dǎo)出Execl疑難點處理的實現(xiàn)

    Java導(dǎo)出Execl疑難點處理的實現(xiàn)

    這篇文章主要介紹了Java導(dǎo)出Execl疑難點處理的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 淺談Java開發(fā)架構(gòu)之領(lǐng)域驅(qū)動設(shè)計DDD落地

    淺談Java開發(fā)架構(gòu)之領(lǐng)域驅(qū)動設(shè)計DDD落地

    DDD(Domain-Driven Design 領(lǐng)域驅(qū)動設(shè)計)是由Eric Evans最先提出,目的是對軟件所涉及到的領(lǐng)域進行建模,以應(yīng)對系統(tǒng)規(guī)模過大時引起的軟件復(fù)雜性的問題
    2021-06-06
  • AndroidHttpClient使用Cookie應(yīng)用分析

    AndroidHttpClient使用Cookie應(yīng)用分析

    今天想把一個用使用了HttpClient的自動簽到小程序移植到Android上,還好Android的SDK自帶了HttpClient的包.當(dāng)然也可以繼續(xù)使用DefaultHttpClient,但用為Android定制的AndroidHttpClient自然更好
    2012-11-11
  • 使用Java校驗SQL語句的合法性五種解決方案

    使用Java校驗SQL語句的合法性五種解決方案

    這篇文章主要介紹了如何用java校驗SQL語句的合法性(提供五種解決方案),使用JDBC?API和JSqlParser庫、正則表達(dá)式、ANTLR解析器生成器或Apache?Calcite庫都可以實現(xiàn)校驗SQL語句的合法性,需要的朋友可以參考下
    2023-04-04
  • Java?SimpleDateFormat與System類使用示例詳解

    Java?SimpleDateFormat與System類使用示例詳解

    這篇文章主要介紹了Java?SimpleDateFormat與System類使用示例,對于SimpleDateFormat類,是一個用來區(qū)分區(qū)域設(shè)置的方式進行日期的是指,以及對日期進行處理分析的一個實現(xiàn)類
    2022-11-11
  • Java中return的用法(兩種)

    Java中return的用法(兩種)

    這篇文章主要介紹了Java中return的用法(兩種)的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • IDEA中application.properties的圖標(biāo)顯示不正常的問題及解決方法

    IDEA中application.properties的圖標(biāo)顯示不正常的問題及解決方法

    這篇文章主要介紹了IDEA中application.properties的圖標(biāo)顯示不正常的問題及解決方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • elasticsearch集群cluster?discovery可配式模塊示例分析

    elasticsearch集群cluster?discovery可配式模塊示例分析

    這篇文章主要為大家介紹了elasticsearch集群cluster?discovery可配式模塊示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-04-04
  • MyBatis批量插入的幾種方式效率比較

    MyBatis批量插入的幾種方式效率比較

    最近工作中遇到了解析excel,然后批量插入,發(fā)現(xiàn)這個插入時間比較長,所以想要進行一些優(yōu)化,下面這篇文章主要給大家介紹了關(guān)于MyBatis批量插入的幾種方式效率比較的相關(guān)資料,需要的朋友可以參考下
    2021-09-09

最新評論

那曲县| 察隅县| 芜湖市| 凤台县| 琼中| 浦江县| 屏东县| 乐至县| 镇沅| 婺源县| 永登县| 嘉祥县| 丹阳市| 新邵县| 遂溪县| 龙里县| 龙胜| 龙海市| 陆良县| 蒙自县| 张掖市| 沈阳市| 紫金县| 富源县| 西宁市| 德化县| 远安县| 从化市| 吴忠市| 克拉玛依市| 称多县| 昌江| 伊通| 溧水县| 阿巴嘎旗| 恩施市| 佛冈县| 平邑县| 楚雄市| 灵川县| 商河县|