如何在组件上显示图象

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

相关文章

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

SpringQuartz定时任务核心组件JobDetail与Trigger配置

《SpringQuartz定时任务核心组件JobDetail与Trigger配置》Spring框架与Quartz调度器的集成提供了强大而灵活的定时任务解决方案,本文主要介绍了SpringQuartz定... 目录引言一、Spring Quartz基础架构1.1 核心组件概述1.2 Spring集成优势二、J

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

Spring组件初始化扩展点BeanPostProcessor的作用详解

《Spring组件初始化扩展点BeanPostProcessor的作用详解》本文通过实战案例和常见应用场景详细介绍了BeanPostProcessor的使用,并强调了其在Spring扩展中的重要性,感... 目录一、概述二、BeanPostProcessor的作用三、核心方法解析1、postProcessB