第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个方法:
public int getIconHeight();
public int getIconWidth();
public void paintIcon(Component arg(),Graphics arg1,int arg2,int arg3);//paintIcon()方法实现在指定坐标位置画图
import java.awt.Component;
import java.awt.Container;
import java.awt.Graphics; import javax.swing.Icon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants; public class DrawIcon implements Icon { //实现Icon接口
private int width; //声明图标的宽
private int height;//声明图标的长
public int getIconHeight(){ //实现getIconHeight()方法
return this.height;
}
public int getIconWidth(){ //实现getIconWidth()方法啊
return this.width;
}
public DrawIcon(int width,int height){//定义构造方法
this.width=width;
this.height=height;
}
//试下安paintIcon()方法
public void paintIcon(Component arg0, Graphics arg1,int x, int y){
arg1.fillOval(x, y, width, height);
}
public static void main(String[] args){
DrawIcon icon=new DrawIcon(15,15);
JLabel j=new JLabel("测试",icon,SwingConstants.CENTER); //创建一个标签,并设置标签上的文字在标签正中间 JFrame jf=new JFrame();//创建一个JFrame窗口
Container c=jf.getContentPane(); c.add(j);
jf.setSize(100,100);
jf.setVisible(true);
jf.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); }
}

思路:一般情况下将图标放置在按钮或标签上,这里将图标放置在标签上,然后将标签添加到容器中,这样就实现了在窗体中使用图标的功能。
3、图标也可以是图标
第13章 Swing程序设计----标签组件与图标的更多相关文章
- 第13章 Swing程序设计
1.Swing概述 GUI(图形用户界面)为程序提供图形界面,最初的设计目的是为程序员构建一个通用的GUI,使其能够在所有平台上运行.但Java 1.0中基础类AWT(抽象窗口工具箱)并没有达到这个要 ...
- 第13章 Swing程序设计----JDialog窗体
JDialog窗体是Swing组件中的对话框 JDialog窗体的功能是从一个窗体中弹出另一个窗体,就像是在使用IE浏览器时弹出的确定对话框一样. 在应用程序中创建JDialog窗体需要实例化JDia ...
- 第13章 Swing程序设计----JFrame窗体
JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些Swing组件的容器. 在开发应用程序时可以通过继承java.swing.JFrame类创建一个窗体,在 ...
- 第13章 Swing程序设计----常用事件监听器
组件本身并不带有任何功能.这时需要为这些组件添加特定事件监听器. Swing中常用的两个事件监听器,即动作事件监听器和焦点事件监听器.
- 第13章 Swing程序设计----常用面板
面板也是一个Swing容器,它可以作为容器容纳其他组件,但它也必须被添加到其他容器中. Swing常用的面板包括JPanel面板和JScrollPanel面板. 1.JPanel面板 import j ...
- 第13章 Swing程序组件----常用布局管理器
在Swing中,每个组件在容器中都有一个具体的位置和大小,而在容器中摆放各种组件时很难判断其具体位置和大小.布局管理器提供了Swing组件安排.展示在容器中的方法及基本的布局功能. Swing提供的常 ...
- JAVA学习Swing章节标签JLabel中图标的使用
package com.swing; import java.awt.Color; import java.awt.Component; import java.awt.Container; impo ...
- Java核心技术卷一基础知识-第9章-Swing用户界面组件-读书笔记
第9章 Swing用户界面组件 本章内容: * Swing与模型-视图-控制器设计模式 * 布局管理概述 * 文本输入 * 选择组件 * 菜单 * 复杂的布局管理 * 对话框 本章将介绍构造功能更加齐 ...
- 实验十四 第九组 张燕~杨蓉庆~杨玲 Swing图形界面组件
实验十四 Swing图形界面组件 8-11-29 理论知识 Swing和MVC设计模式 (1)设计模式(Design pattern)是设计者一种流行的 思考设计问题的方法,是一套被反复使用,多数人 ...
随机推荐
- ASP.NET中的Excel操作(NPOI方式)
代码准备: 一:实体准备 代码如下: /// <summary> /// 一个能添加到将要导出到指定行的实体类型规范 /// data:{int StartColIndex ? 0, in ...
- 对方网络ping不通
后台接口往往部署在其他服务器上如果ping不同 很大可能是因为对方开防火墙的原因 解决方法:控制面板-windows防火墙-打开或关闭windows防火墙
- beginBackgroundTaskWithExpirationHandle
[[UIApllication sharedApplication] beginBackgroundTaskWithExpirationHandle:^{}];这个方法在app进入后台时,可以做一些事 ...
- MapReduce,DataJoin,链接多数据源
主要介绍用DataJoin类来链接多数据源,先看一下例子,假设二个数据源customs和orders customer ID Name PhomeNumber 1 ...
- html5学习(三)
html5特点: 1 微数据与微格式等方面的支持. 2 本地存储,离线应用. 3 API调用,地图,位置,LBS等. 4 连接通讯,后台线程. 5 多媒体. 7 css3.
- DOM操作-倒排序子元素
代码: —————————————————————————————— <script type="text/javascript"> // ...
- SharePoint 2013 APP 开发示例 (二)获取用户信息
SharePoint 2013 APP 开发示例 (二)获取用户信息 这个示例里,我们将演示如何获取用户信息: 1. 打开 Visual Studio 2012. 2. 创建一个新的 SharePo ...
- Java程序输出打字
代码: 效果:
- Java Web项目发布及使用自定义域名
详细讲解的网址: http://wenku.baidu.com/link?url=-ACZxKUcfrbhrMRUP3Ov-Q_c-Q9JPrA9D1fzHjHuJsWwZfRsVDVQ2qBtoY7 ...
- javascript 浏览器
hashchange事件 window.location.hash.slice(1) 添加和修改历史记录条目LINKHTML5引进了history.pushState()方法和history.repl ...