zoukankan      html  css  js  c++  java
  • 第13章 Swing程序设计----标签组件与图标

    在Swing中显示文本或提示信息的方法是使用标签。本节将探讨Swing标签的用法、如何创建标签,以及如何在标签上放置文本和图标

    1、标签的使用

    标签可以显示一行只读文本、一个图像或带图像的文本,它并不能产生任何类型的事件,只是简单地显示文本和图片,但是可以使用标签的特性制定标签上文本的对齐方式。

    标签由JLabel类定义,JLabel类提供了多种构造方法,可以创造多种标签:

    public JLabel():创建一个不带图标和文本的JLabel对象;

    public JLabel(Icon icon):创建一个带图标的JLabel对象 ;

    public JLabel(Icon icon,int aligment):创建一个带图标的JLabel对象,并设置图标水平对齐方式;

    public JLabel(String text,int aligment):创建一个带文本的JLabel对象,并设置文字水平对齐方式;

    public JLabel(String text,Icon icon,int aligment):创建一个带文本、带图标的JLabel对象,并设置标签内部的水平对其格式。

    2、图标的使用

     在Swing中通过Icon接口来创建图标,可以在创建时给定图标的大小,颜色等特性。如果使用Icon接口,必须实现Icon接口中的3个方法:

    1 public int getIconHeight();
    2 public int getIconWidth();
    3 public void paintIcon(Component arg(),Graphics arg1,int arg2,int arg3);//paintIcon()方法实现在指定坐标位置画图
     1 import java.awt.Component;
     2 import java.awt.Container;
     3 import java.awt.Graphics;
     4 
     5 import javax.swing.Icon;
     6 import javax.swing.JFrame;
     7 import javax.swing.JLabel;
     8 import javax.swing.SwingConstants;
     9 import javax.swing.WindowConstants;
    10 
    11 public class DrawIcon implements Icon {  //实现Icon接口
    12     private int width; //声明图标的宽
    13     private int height;//声明图标的长
    14     public int getIconHeight(){  //实现getIconHeight()方法
    15         return this.height;
    16     }
    17     public int getIconWidth(){  //实现getIconWidth()方法啊
    18         return this.width;
    19     }
    20     public DrawIcon(int width,int height){//定义构造方法
    21         this.width=width;
    22         this.height=height;
    23     }
    24     //试下安paintIcon()方法
    25     public void paintIcon(Component arg0, Graphics arg1,int x, int y){
    26         arg1.fillOval(x, y, width, height);
    27     }
    28     public static void main(String[] args){
    29         DrawIcon icon=new DrawIcon(15,15);        
    30         JLabel j=new JLabel("测试",icon,SwingConstants.CENTER); //创建一个标签,并设置标签上的文字在标签正中间
    31         
    32         JFrame jf=new JFrame();//创建一个JFrame窗口
    33         Container c=jf.getContentPane();
    34         
    35         c.add(j);
    36         jf.setSize(100,100);
    37         jf.setVisible(true);
    38         jf.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    39         
    40     }
    41 }

    思路:一般情况下将图标放置在按钮或标签上,这里将图标放置在标签上,然后将标签添加到容器中,这样就实现了在窗体中使用图标的功能。

    3、图标也可以是图标                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         

                                                                                                                                                                                                                                                                                                            

     

  • 相关阅读:
    DevExpress 数据与展示的不同
    WPF 自定义属性
    ruby中的retry和redo
    linux mint 18.1 安装nvidia显卡驱动
    gradle << 操作符作废
    emacs不能使用中文输入法
    linux mint 崩溃
    mint安装相关数据库lib
    字体安装文泉驿正黑
    Emacs使用projectile-rails 插件注意事项
  • 原文地址:https://www.cnblogs.com/chamie/p/4700834.html
Copyright © 2011-2022 走看看