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

Java Swing JLabel標(biāo)簽的使用方法

 更新時(shí)間:2019年12月06日 11:47:42   作者:xietansheng  
這篇文章主要介紹了Java Swing JLabel標(biāo)簽的使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1. 概述

官方JavaDocsApi: javax.swing.JLabel

JLabel,標(biāo)簽。標(biāo)簽主要用于展示 文本 或 圖片,也可以 同時(shí)顯示文本和圖片。

JLabel 的構(gòu)造方法:

/*
 * 構(gòu)造方法中的參數(shù)含義:
 *   text: 標(biāo)簽顯示的 文本
 *   image: 標(biāo)簽顯示的 圖片
 *   horizontalAlignment: 標(biāo)簽內(nèi)容(在標(biāo)簽內(nèi))的水平對其方式(豎直方向默認(rèn)居中, 可通過方法設(shè)置)
 */
JLabel()

JLabel(String text)

JLabel(String text, int horizontalAlignment)

JLabel(Icon image) 

JLabel(Icon image, int horizontalAlignment) 

JLabel(String text, Icon image, int horizontalAlignment) 

JLabel 的常用方法:

// 設(shè)置 文本 和 圖片
void setText(String text)
void setIcon(Icon icon)

// 設(shè)置文本相對于圖片的位置(文本默認(rèn)在圖片右邊垂直居中)
void setHorizontalTextPosition(int textPosition)
void setVerticalTextPosition(int textPosition)

// 設(shè)置標(biāo)簽內(nèi)容(在標(biāo)簽內(nèi))的對其方式(默認(rèn)左對齊并垂直居中)
void setHorizontalAlignment(int alignment)
void setVerticalAlignment(int alignment)

// 設(shè)置圖片和文本之間的間隙
void setIconTextGap(int iconTextGap)

/* 
 * 下面的方法定義在 JComponent 基類中
 */

// 設(shè)置文本的字體類型、樣式 和 大小
void setFont(Font font)

// 設(shè)置字體顏色
void setForeground(Color fg)

// 當(dāng)鼠標(biāo)移動到組件上時(shí)顯示的提示文本
void setToolTipText(String text)

// 設(shè)置組件的背景
void setBackground(Color bg)

// 設(shè)置組件是否可見
void setVisible(boolean visible)

// 設(shè)置組件是否為 不透明,JLabel默認(rèn)為透明,設(shè)置為不透明后才能顯示背景
void setOpaque(boolean isOpaque)

// 設(shè)置組件的 首選 大小
void setPreferredSize(Dimension preferredSize)

// 設(shè)置組件的 最小 大小
void setMinimumSize(Dimension minimumSize)

// 設(shè)置組件的 最大 大小
void setMaximumSize(Dimension maximumSize)

/*
 * 上面的對齊參數(shù)具體的取值常量參考 DocsApi;
 * setXXX(...) 方法往往都對應(yīng)著 getXXX() 方法。
 */

顯示圖片時(shí),Icon實(shí)例的創(chuàng)建(一般創(chuàng)建ImageIcon,ImageIcon 實(shí)現(xiàn)了 Icon):

ImageIcon 的構(gòu)造方法:

// 使用 本地路徑 圖片創(chuàng)建 ImageIcon
ImageIcon(String filename)

// 使用 網(wǎng)絡(luò)路徑 圖片創(chuàng)建 ImageIcon
ImageIcon(URL location)

// 使用圖片文件的字節(jié)數(shù)組創(chuàng)建 ImageIcon
ImageIcon(byte[] imageData)

// 使用 java.awt.Image 實(shí)例創(chuàng)建 ImageIcon
ImageIcon(java.awt.Image image)

java.awt.Image 實(shí)例的創(chuàng)建:

// 方法一: 通過 java.awt.Toolkit 工具類來讀取本地、網(wǎng)絡(luò) 或 內(nèi)存中 的 圖片(支持 GIF、JPEG 或 PNG)
Image image = Toolkit.getDefaultToolkit().getImage(String filename);
Image image = Toolkit.getDefaultToolkit().getImage(URL url);
Image image = Toolkit.getDefaultToolkit().createImage(byte[] imageData);

// 方法二: 通過 javax.imageio.ImageIO 工具類讀取本地、網(wǎng)絡(luò) 或 內(nèi)存中 的 圖片(BufferedImage 繼承自 Image)
BufferedImage bufImage = ImageIO.read(File input);
BufferedImage bufImage = ImageIO.read(URL input);
BufferedImage bufImage = ImageIO.read(InputStream input);

/*
 * PS_01: 圖片寬高: BufferedImage 可以通過 bufImage.getWidth() 和 bufImage.getHeight() 方法直接獲取圖片的寬高;
 *         Image 獲取寬高需要另外傳入一個(gè) ImageObserver 參數(shù)。
 *
 * PS_02: 圖片裁剪: BufferedImage 通過 bufImage.getSubimage(int x, int y, int w, int h) 方法可以截取圖片的
 *         任意一部分,返回一個(gè)新的 BufferedImage 實(shí)例。
 *
 * PS_03: 圖片縮放: Image 通過 image.getScaledInstance(int width, int height, int hints) 方法可以對圖片進(jìn)行
 *         縮放,返回新的一個(gè) Image 實(shí)例。
 */

2. 代碼實(shí)例

package com.xiets.swing;

import javax.swing.*;
import java.awt.*;

public class Main {

  public static void main(String[] args) {
    JFrame jf = new JFrame("測試窗口");
    jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    // 創(chuàng)建內(nèi)容面板,默認(rèn)使用流式布局
    JPanel panel = new JPanel();

    /*
     * 只顯示文本
     */
    JLabel label01 = new JLabel();
    label01.setText("Only Text");
    label01.setFont(new Font(null, Font.PLAIN, 25)); // 設(shè)置字體,null 表示使用默認(rèn)字體
    panel.add(label01);

    /*
     * 只顯示圖片
     */
    JLabel label02 = new JLabel();
    label02.setIcon(new ImageIcon("demo01.jpg"));
    panel.add(label02);

    /*
     * 同時(shí)顯示文本和圖片
     */
    JLabel label03 = new JLabel();
    label03.setText("文本和圖片");
    label03.setIcon(new ImageIcon("demo02.jpg"));
    label03.setHorizontalTextPosition(SwingConstants.CENTER);  // 水平方向文本在圖片中心
    label03.setVerticalTextPosition(SwingConstants.BOTTOM);   // 垂直方向文本在圖片下方
    panel.add(label03);

    jf.setContentPane(panel);
    jf.pack();
    jf.setLocationRelativeTo(null);
    jf.setVisible(true);
  }

}

結(jié)果展示:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中volatile關(guān)鍵字的線程的可見性、有序性詳解

    Java中volatile關(guān)鍵字的線程的可見性、有序性詳解

    這篇文章主要介紹了Java中volatile關(guān)鍵字的線程的可見性、有序性詳解,在juc多線程并發(fā)編程中,常常需要關(guān)注線程的"可見性"與"有序性",本文將詳細(xì)介紹這兩部分內(nèi)容,以及volatile關(guān)鍵字的使用,需要的朋友可以參考下
    2024-01-01
  • java中main函數(shù)你知道多少

    java中main函數(shù)你知道多少

    大家好,本篇文章主要講的是java中main函數(shù)你知道多少,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • SpringBoot JSON全局日期格式轉(zhuǎn)換器實(shí)現(xiàn)方式

    SpringBoot JSON全局日期格式轉(zhuǎn)換器實(shí)現(xiàn)方式

    這篇文章主要介紹了SpringBoot JSON全局日期格式轉(zhuǎn)換器,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • SpringSecurity自定義資源攔截規(guī)則及登錄界面跳轉(zhuǎn)問題

    SpringSecurity自定義資源攔截規(guī)則及登錄界面跳轉(zhuǎn)問題

    這篇文章主要介紹了SpringSecurity自定義資源攔截規(guī)則及登錄界面跳轉(zhuǎn)問題,我們想要自定義認(rèn)證邏輯,就需要創(chuàng)建一些原來不存在的bean,這個(gè)時(shí)候就可以使@ConditionalOnMissingBean注解,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2023-12-12
  • Java同步關(guān)鍵字synchronize底層實(shí)現(xiàn)原理解析

    Java同步關(guān)鍵字synchronize底層實(shí)現(xiàn)原理解析

    synchronized關(guān)鍵字對大家來說并不陌生,當(dāng)我們遇到并發(fā)情況時(shí),優(yōu)先會想到用synchronized關(guān)鍵字去解決,synchronized確實(shí)能夠幫助我們?nèi)ソ鉀Q并發(fā)的問題,接下來通過本文給大家分享java synchronize底層實(shí)現(xiàn)原理,感興趣的朋友一起看看吧
    2021-08-08
  • springboot項(xiàng)目使用SchedulingConfigurer實(shí)現(xiàn)多個(gè)定時(shí)任務(wù)的案例代碼

    springboot項(xiàng)目使用SchedulingConfigurer實(shí)現(xiàn)多個(gè)定時(shí)任務(wù)的案例代碼

    這篇文章主要介紹了springboot項(xiàng)目使用SchedulingConfigurer實(shí)現(xiàn)多個(gè)定時(shí)任務(wù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-01-01
  • 一文詳解Java中的可變對象(Mutable)與不可變對象(Immutable)

    一文詳解Java中的可變對象(Mutable)與不可變對象(Immutable)

    如何在 Java 中創(chuàng)建不可變對象?我以前以為所有對象都是不可變的,因?yàn)槿绻愀淖円粋€(gè) String 實(shí)例的內(nèi)容,它總是會創(chuàng)建一個(gè)新的 String 對象并指向該對象,在本文中,我不僅將分享在 Java 中Immutable的步驟,還將討論可變對象與不可變對象及其優(yōu)缺點(diǎn)
    2023-11-11
  • Java服務(wù)端性能優(yōu)化之JVM垃圾回收策略詳解

    Java服務(wù)端性能優(yōu)化之JVM垃圾回收策略詳解

    JVM垃圾回收策略涵蓋了基本原理、常見策略(如SerialGC、ParallelGC、CMS、G1GC)以及優(yōu)化建議,選擇合適的策略和調(diào)整參數(shù),如堆大小和GC日志,可以提高應(yīng)用性能和響應(yīng)速度,持續(xù)監(jiān)控和分析是關(guān)鍵步驟
    2025-03-03
  • RabbitMQ基礎(chǔ)概念之信道channel詳解

    RabbitMQ基礎(chǔ)概念之信道channel詳解

    這篇文章主要介紹了RabbitMQ基礎(chǔ)概念之信道channel詳解,信道是生產(chǎn)消費(fèi)者與rabbit通信的渠道,生產(chǎn)者publish或者消費(fèi)者消費(fèi)一個(gè)隊(duì)列都是需要通過信道來通信的,需要的朋友可以參考下
    2023-08-08
  • 關(guān)于File與MultipartFile的用法概述

    關(guān)于File與MultipartFile的用法概述

    這篇文章主要介紹了關(guān)于File與MultipartFile的用法概述,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09

最新評論

东丰县| 保靖县| 辽中县| 班戈县| 睢宁县| 资源县| 中方县| 平乐县| 郯城县| 芜湖市| 视频| 绥棱县| 泰顺县| 达拉特旗| 望奎县| 昭苏县| 金阳县| 江西省| 民权县| 林西县| 沙雅县| 东莞市| 望江县| 丰都县| 邢台县| 溧阳市| 平江县| 吉木萨尔县| 鄂托克前旗| 钟山县| 图片| 盐山县| 宿迁市| 内黄县| 瓮安县| 玉田县| 南开区| 溧阳市| 林口县| 普兰店市| 望江县|