模块  java.desktop
软件包  javax.swing

Class JLabel

  • 实现的所有接口
    ImageObserverMenuContainerSerializableAccessibleSwingConstants
    已知直接子类:
    BasicComboBoxRendererDefaultListCellRendererDefaultTableCellRendererDefaultTreeCellRenderer

    @JavaBean(defaultProperty="UI",
              description="A component that displays a short string and an icon.")
    public class JLabel
    extends JComponent
    implements SwingConstants, Accessible
    短文本字符串或图像的显示区域,或两者。 标签不会对输入事件做出反应。 结果,它无法获得键盘焦点。 但是,标签可以显示键盘替代方案,以方便附近具有键盘替代但无法显示的组件。

    JLabel对象可以显示文本,图像或两者。 您可以通过设置垂直和水平对齐来指定标签显示区域中标签内容对齐的位置。 默认情况下,标签在其显示区域中垂直居中。 默认情况下,纯文本标签前沿对齐; 默认情况下,仅图像标签水平居中。

    您还可以指定文本相对于图像的位置。 默认情况下,文本位于图像的后缘,文本和图像垂直对齐。

    标签的前沿和后沿由其ComponentOrientation属性的值确定。 目前,默认的ComponentOrientation设置将前缘映射到左侧,将后缘映射到右侧。

    最后,您可以使用setIconTextGap方法指定文本和图像之间应出现的像素数。 默认值为4像素。

    有关更多文档,请参阅The Java Tutorial中的 How to Use Labels

    警告: Swing不是线程安全的。 有关更多信息,请参阅Swing's Threading Policy

    警告:此类的序列化对象与以后的Swing版本不兼容。 当前的序列化支持适用于运行相同版本Swing的应用程序之间的短期存储或RMI。 从1.4开始, java.beans软件包中添加了对所有JavaBeans java.beans长期存储的支持。 请参阅XMLEncoder

    从以下版本开始:
    1.2
    另请参见:
    Serialized Form
    • 字段详细信息

      • labelFor

        protected Component labelFor
        此标签所用的组件; 如果标签不是组件的标签,则返回null
    • 构造方法详细信息

      • JLabel

        public JLabel​(String text,
                      Icon icon,
                      int horizontalAlignment)
        使用指定的文本,图像和水平对齐创建JLabel实例。 标签在其显示区域中垂直居中。 文本位于图像的后缘。
        参数
        text - 标签显示的文本。
        icon - 标签显示的图像。
        horizontalAlignment -一个中所定义的以下常量 SwingConstantsLEFTCENTERRIGHTLEADINGTRAILING
      • JLabel

        public JLabel​(String text,
                      int horizontalAlignment)
        使用指定的文本和水平对齐方式创建JLabel实例。 标签在其显示区域中垂直居中。
        参数
        text - 标签显示的文本。
        horizontalAlignment -一个中所定义的以下常量 SwingConstantsLEFTCENTERRIGHTLEADINGTRAILING
      • JLabel

        public JLabel​(String text)
        使用指定的文本创建JLabel实例。 标签与其显示区域的前缘对齐,并垂直居中。
        参数
        text - 标签显示的文本。
      • JLabel

        public JLabel​(Icon image,
                      int horizontalAlignment)
        使用指定的图像和水平对齐创建JLabel实例。 标签在其显示区域中垂直居中。
        参数
        image - 标签显示的图像。
        horizontalAlignment -一个中所定义的以下常量 SwingConstantsLEFTCENTERRIGHTLEADINGTRAILING
      • JLabel

        public JLabel​(Icon image)
        使用指定的图像创建JLabel实例。 标签在其显示区域中垂直和水平居中。
        参数
        image - 标签显示的图像。
      • JLabel

        public JLabel()
        创建一个没有图像且标题为空字符串的JLabel实例。 标签在其显示区域中垂直居中。 标签的内容一旦设置,将显示在标签显示区域的前沿。
    • 方法详细信息

      • getUI

        public LabelUI getUI()
        返回呈现此组件的L&F对象。
        重写:
        getUI在类 JComponent
        结果
        LabelUI对象
      • getIcon

        public Icon getIcon()
        返回标签显示的图形图像(字形,图标)。
        结果
        一个图标
        另请参见:
        setIcon(javax.swing.Icon)
      • setDisplayedMnemonic

        @BeanProperty(visualUpdate=true,
                      description="The mnemonic keycode.")
        public void setDisplayedMnemonic​(int key)
        指定表示助记键的键码。 当标签是较大组件的一部分时,将使用此属性。 如果标签的labelFor属性不为null,则标签将在激活助记符时调用labelFor属性指定的组件的requestFocus方法。
        参数
        key - 表示助记键的键码
        另请参见:
        getLabelFor()setLabelFor(java.awt.Component)
      • setDisplayedMnemonic

        public void setDisplayedMnemonic​(char aChar)
        将displayedMnemonic指定为char值。
        参数
        aChar - 指定要显示的助记符的字符
        另请参见:
        setDisplayedMnemonic(int)
      • getDisplayedMnemonic

        public int getDisplayedMnemonic()
        返回表示助记键的键码。 当标签是较大组件的一部分时,将使用此属性。 如果标签的labelFor属性不为null,则标签将在激活助记符时调用labelFor属性指定的组件的requestFocus方法。
        结果
        助记键的int值
        另请参见:
        getLabelFor()setLabelFor(java.awt.Component)
      • setDisplayedMnemonicIndex

        @BeanProperty(visualUpdate=true,
                      description="the index into the String to draw the keyboard character mnemonic at")
        public void setDisplayedMnemonicIndex​(int index)
                                       throws IllegalArgumentException
        提供关于文本中哪个字符应该被装饰以表示助记符的外观的提示。 并非所有的外观都能支持这一点。 值-1表示没有助记符,字符串中不包含助记符,或者开发人员不希望显示助记符。

        此值的更新将作为与助记符更改相关的属性(例如助记符本身,文本...)。 如果您不希望默认字符加下划线,则只需要调用此方法。 例如,如果文本为“另存为”,并带有“a”的助记符,并且您希望将“A”装饰为“保存A ”,则必须在调用setDisplayedMnemonicIndex(5)后调用setDisplayedMnemonic(KeyEvent.VK_A)

        参数
        index - 索引到要加下划线的字符串
        异常
        IllegalArgumentException - 如果 index > =文本长度,则抛出<-1
        从以下版本开始:
        1.4
      • getDisplayedMnemonicIndex

        public int getDisplayedMnemonicIndex()
        返回作为索引的字符,外观应该提供装饰以表示助记符。
        结果
        表示助记符的索引
        从以下版本开始:
        1.4
        另请参见:
        setDisplayedMnemonicIndex(int)
      • checkHorizontalKey

        protected int checkHorizontalKey​(int key,
                                         String message)
        验证该键是horizontalAlignment属性的合法值。
        参数
        key - 要检查的属性值
        message - IllegalArgumentException详细消息
        结果
        如果 key是horizontalAlignment属性的合法值,则为 key
        异常
        IllegalArgumentException - 如果密钥不是LEFT,CENTER,RIGHT,LEADING或TRAILING。
        另请参见:
        setHorizontalTextPosition(int)setHorizontalAlignment(int)
      • checkVerticalKey

        protected int checkVerticalKey​(int key,
                                       String message)
        验证该键是verticalAlignment或verticalTextPosition属性的合法值。
        参数
        key - 要检查的属性值
        message - IllegalArgumentException详细消息
        结果
        如果 key是verticalAlignment或verticalTextPosition属性的合法值,则为 key
        异常
        IllegalArgumentException - 如果密钥不是TOP,CENTER或BOTTOM。
        另请参见:
        setVerticalAlignment(int)setVerticalTextPosition(int)
      • getIconTextGap

        public int getIconTextGap()
        返回文本与此标签中显示的图标之间的空间量。
        结果
        一个int等于文本和图标之间的像素数。
        另请参见:
        setIconTextGap(int)
      • setIconTextGap

        @BeanProperty(visualUpdate=true,
                      description="If both the icon and text properties are set, this property defines the space between them.")
        public void setIconTextGap​(int iconTextGap)
        如果同时设置了图标和文本属性,则此属性定义它们之间的空间。

        此属性的默认值为4像素。

        这是一个JavaBeans绑定属性。

        参数
        iconTextGap - 图标和文本属性之间的空格
        另请参见:
        getIconTextGap()
      • getVerticalAlignment

        public int getVerticalAlignment()
        返回标签内容沿Y轴的对齐方式。
        结果
        的verticalAlignment属性,在定义的以下常量中的一个的值 SwingConstantsTOPCENTER ,或 BOTTOM
        另请参见:
        SwingConstantssetVerticalAlignment(int)
      • setVerticalAlignment

        @BeanProperty(visualUpdate=true,
                      enumerationValues={"SwingConstants.TOP","SwingConstants.CENTER","SwingConstants.BOTTOM"},
                      description="The alignment of the label\'s contents along the Y axis.")
        public void setVerticalAlignment​(int alignment)
        设置标签内容沿Y轴的对齐方式。

        此属性的默认值为CENTER。

        参数
        alignment -一个中所定义的以下常量 SwingConstantsTOPCENTER (缺省值),或者 BOTTOM
        另请参见:
        SwingConstantsgetVerticalAlignment()
      • getHorizontalAlignment

        public int getHorizontalAlignment()
        返回标签内容沿X轴的对齐方式。
        结果
        的HorizontalAlignment属性的值,在定义的以下常量之一 SwingConstantsLEFTCENTERRIGHTLEADINGTRAILING
        另请参见:
        setHorizontalAlignment(int)SwingConstants
      • setHorizontalAlignment

        @BeanProperty(visualUpdate=true,
                      enumerationValues={"SwingConstants.LEFT","SwingConstants.CENTER","SwingConstants.RIGHT","SwingConstants.LEADING","SwingConstants.TRAILING"},
                      description="The alignment of the label\'s content along the X axis.")
        public void setHorizontalAlignment​(int alignment)
        设置标签内容沿X轴的对齐方式。

        这是一个JavaBeans绑定属性。

        参数
        alignment -一个中所定义的以下常量 SwingConstantsLEFTCENTER (仅用于图像的标签的默认值), RIGHTLEADING (默认为纯文本标记),或 TRAILING
        另请参见:
        SwingConstantsgetHorizontalAlignment()
      • getVerticalTextPosition

        public int getVerticalTextPosition()
        返回标签文本相对于其图像的垂直位置。
        结果
        一个中所定义的以下常量 SwingConstantsTOPCENTER ,或 BOTTOM
        另请参见:
        setVerticalTextPosition(int)SwingConstants
      • setVerticalTextPosition

        @BeanProperty(expert=true,
                      visualUpdate=true,
                      enumerationValues={"SwingConstants.TOP","SwingConstants.CENTER","SwingConstants.BOTTOM"},
                      description="The vertical position of the text relative to it\'s image.")
        public void setVerticalTextPosition​(int textPosition)
        设置标签文本相对于其图像的垂直位置。

        此属性的默认值为CENTER。

        这是一个JavaBeans绑定属性。

        参数
        textPosition -一个中所定义的以下常量 SwingConstantsTOPCENTER (缺省值),或者 BOTTOM
        另请参见:
        SwingConstantsgetVerticalTextPosition()
      • getHorizontalTextPosition

        public int getHorizontalTextPosition()
        返回标签文本相对于其图像的水平位置。
        结果
        一个中所定义的以下常量 SwingConstantsLEFTCENTERRIGHTLEADINGTRAILING
        另请参见:
        SwingConstants
      • setHorizontalTextPosition

        @BeanProperty(expert=true,
                      visualUpdate=true,
                      enumerationValues={"SwingConstants.LEFT","SwingConstants.CENTER","SwingConstants.RIGHT","SwingConstants.LEADING","SwingConstants.TRAILING"},
                      description="The horizontal position of the label\'s text, relative to its image.")
        public void setHorizontalTextPosition​(int textPosition)
        设置标签文本相对于其图像的水平位置。
        参数
        textPosition -一个中所定义的以下常量 SwingConstantsLEFTCENTERRIGHTLEADING ,或 TRAILING (缺省值)。
        另请参见:
        SwingConstants
      • paramString

        protected String paramString()
        返回此JLabel的字符串表示形式。 此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。 返回的字符串可能为空,但可能不是null
        重写:
        paramStringJComponent
        结果
        此JLabel的字符串表示形式。
      • getLabelFor

        public Component getLabelFor()
        获取标记的组件。
        结果
        这是标签的组件。 如果这不标记组件,则可以为null。 如果设置了displayedMnemonic属性并且还设置了labelFor属性,则在激活助记符时,标签将调用labelFor属性指定的组件的requestFocus方法。
        另请参见:
        getDisplayedMnemonic()setDisplayedMnemonic(int)
      • setLabelFor

        @BeanProperty(description="The component this is labelling.")
        public void setLabelFor​(Component c)
        设置这是标签的组件。 如果这不标记组件,则可以为null。 如果设置了displayedMnemonic属性并且还设置了labelFor属性,则在激活助记符时,标签将调用labelFor属性指定的组件的requestFocus方法。
        参数
        c - 此标签所用的组件,如果标签不是组件的标签,则为null
        另请参见:
        getDisplayedMnemonic()setDisplayedMnemonic(int)