如何在组件上显示图象

2023-10-18 21:33
文章标签 组件 显示 图象

本文主要是介绍如何在组件上显示图象,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

星期五 2007年05月04日

如何在组件上显示图象

 

转再自http://dev.21tx.com/2003/07/26/15311.html

首先要说明的是,在组件上方便的显示图象是 Swing 比 AWT 优越的特性之一,暂时我还没看到如何
在 AWT 中实现这一方法,如果你知道,请来信告诉我。

在 swing 中,button, lable 等组件都可轻易的用图象来改变它的外观,以 button 为例,当创建一
个 button 对象的时候通常是这样的:
JButton button = new JButton("Click me");
这样就创建了一个 button 对象,上面显示的文字是 Click me.

现在我们来稍做改动:
ImageIcon buttonIcon = new ImageIcon("button.gif", "a background of button");
JButton button = new JButton(buttonIcon);
这两行代码就达到了目的,在 button 上显示了图象 button.gif,注意我们用的是 ImageIcon 类,而
不是 Image 类。ImageIcon 中的第二个参数是对 ImageIcon 对象的描述,这个参数以后可能会被
assistive 技术用到。

如果想在 button 上同时显示文字和图象,还可以这样:
JButton button = new JButton("Click me", buttonIcon);

另外,还可以定义图象在 组件上的位置,如:
JButton button = new JButton("Click me", buttonIcon, JButton.CENTER);

最后,在顺便的讲一下如何改变你的Applet/application 上角的那个小图标,怎么样,看那杯咖啡厌烦了把?
让我们来换上自己的图标吧,我用的是setIconImage方法。
在 applet中,定义了一个image对象后就可以直接以它为参数来使用 setIconImage() 方法了,
而在 application 中,还需要由 ImageIcon 类转换到 Image 对象去。可能是我笨,不知道如何在application中
有什么简单的办法可以直接使用 Image 类,谁知道请写信给我,十分感谢。
URL imgURL = getClass().getResource("title.gif");
ImageIcon icon = new ImageIcon(imgURL);    
setIconImage(icon.getImage());

 

这篇关于如何在组件上显示图象的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/235266

相关文章

Olingo分析和实践之OData框架核心组件初始化(关键步骤)

《Olingo分析和实践之OData框架核心组件初始化(关键步骤)》ODataSpringBootService通过初始化OData实例和服务元数据,构建框架核心能力与数据模型结构,实现序列化、URI... 目录概述第一步:OData实例创建1.1 OData.newInstance() 详细分析1.1.1

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

RedisTemplate默认序列化方式显示中文乱码的解决

《RedisTemplate默认序列化方式显示中文乱码的解决》本文主要介绍了SpringDataRedis默认使用JdkSerializationRedisSerializer导致数据乱码,文中通过示... 目录1. 问题原因2. 解决方案3. 配置类示例4. 配置说明5. 使用示例6. 验证存储结果7.

C++ RabbitMq消息队列组件详解

《C++RabbitMq消息队列组件详解》:本文主要介绍C++RabbitMq消息队列组件的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. RabbitMq介绍2. 安装RabbitMQ3. 安装 RabbitMQ 的 C++客户端库4. A

idea中project的显示问题及解决

《idea中project的显示问题及解决》:本文主要介绍idea中project的显示问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录idea中project的显示问题清除配置重China编程新生成配置总结idea中project的显示问题新建空的pr

PyQt6中QMainWindow组件的使用详解

《PyQt6中QMainWindow组件的使用详解》QMainWindow是PyQt6中用于构建桌面应用程序的基础组件,本文主要介绍了PyQt6中QMainWindow组件的使用,具有一定的参考价值,... 目录1. QMainWindow 组php件概述2. 使用 QMainWindow3. QMainW

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n