java编程接口(6) ------ 图标
2015-10-10 08:16
495 查看
能够在JLable或者不论什么从AbstractButton继承的组件使用Icon。
能够使用不论什么想用的gif文件,要打开一个文件而且得到图形。仅仅须要创建一个ImageIcon对象并把文件名称传递给它就可以。然后就能够在程序中使用它了。
以下的样例是给JLabel和JButton加入图片,而且为button的各个状态设置不同的图片。代码例如以下:
public class Icons extends JFrame { private static Icon[] icons; private JButton jb,jb2 = new JButton("Disable"); public Icons() { setLayout(new FlowLayout()); setVisible(true); setSize(400,200); setTitle("Icon"); // TODO Auto-generated constructor stub icons = new Icon[]{ new ImageIcon(getClass().getResource("icon1.png")), new ImageIcon(getClass().getResource("icon2.png")), new ImageIcon(getClass().getResource("icon3.png")), new ImageIcon(getClass().getResource("icon4.png")), new ImageIcon(getClass().getResource("icon5.png")), new ImageIcon(getClass().getResource("icon6.png")) }; jb = new JButton(icons[3]); add(new JLabel(icons[5])); jb.setRolloverEnabled(true); jb.setRolloverIcon(icons[2]); jb.setPressedIcon(icons[2]); jb.setDisabledIcon(icons[4]); jb.setToolTipText("提示"); add(jb); jb2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(jb.isEnabled()){ jb.setEnabled(false); jb2.setText("Enable"); } else{ jb.setEnabled(true); jb2.setText("Disable"); } } }); add(jb2); } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub new Icons(); } }运行程序,结果例如以下:
能够看出,button在按下、禁止、浮动时的显示的图片不同,而且。也给button加入了“工具提示”的功能。当鼠标停留在button上时。就会出现提示的文本,这就使得button具有了相当不错的动画效果。
很多不同的Swing组件的构造器都接受Icon类型的參数,也可采用setIcon()要播放或更改图标。
相关文章推荐
- Java8 Lambda表达应用 -- 单线程游戏server+异步数据库操作
- java.lang.OutOfMemoryError: PermGen space
- spring mvc拦截器和<mvc:annotation-driven />的详解
- 浅谈方法重写 super
- struts配置 WEB得拷贝要注意的事项
- Java环境配置之javac不是内部或外部命令
- 两个数组求和为一个固定数值的所有组合java实现
- Reverse Second half of LinkedList Java实现
- Valid Parentheses Java
- 大龄屌丝自学笔记--Java零基础到菜鸟--032
- <constant name="struts.devMode" value="true" />
- java动态代理(JDK和cglib)
- 设计模式——简单工厂模式
- 大龄屌丝自学笔记--Java零基础到菜鸟--031
- Java中字符串中子串的查找共有四种方法(indexof())
- 如何解决xml在eclipse下的拼写报错
- Java中的String与常量池
- java篇 【15】抽象类与接口的应用 《==重要
- 使用 Hibernate 和 Spring AOP 构建泛型类型安全的 DAO
- Java虚拟机判断对象存活算法