Java开发工程师是怎样炼成的------按钮篇(Buttons)之三
来源:互联网 发布:淘宝高级搜索准确性 编辑:程序博客网 时间:2024/04/29 16:27
本节主要讲解图示(Icons)
我们常常能够看到每个按钮上都有一个小小的图片。下面我们就讲讲Icons和按钮搭配的一些用法。先看看下面的程序代码
import java.awt.*;
import java.awt.event.*;
public class Faces extends JApplet ...{
static String path = "E:/java/java编程思想源代码/c13/";
static Icon[] faces = ...{ new ImageIcon(path + "face0.gif"),
new ImageIcon(path + "face1.gif"),
new ImageIcon(path + "face2.gif"),
new ImageIcon(path + "face3.gif"),
new ImageIcon(path + "face4.gif"), };
JButton jb = new JButton("JButton", faces[3]),//构造函数中设置图片
jb2 = new JButton("Disable");
boolean mad = false;
public void init() ...{
Container cp = getContentPane();
cp.setLayout(new FlowLayout());
//按钮按下触发的事件
jb.addActionListener(new ActionListener() ...{
public void actionPerformed(ActionEvent e) ...{
if (mad) ...{
jb.setIcon(faces[3]);//设置按钮图片
mad = false;
} else ...{
jb.setIcon(faces[0]);
mad = true;
}
jb.setVerticalAlignment(JButton.TOP);//设置图标和文本的垂直对齐方式。
jb.setHorizontalAlignment(JButton.LEFT);//设置图标和文本的水平对齐方式
}
});
jb.setRolloverEnabled(true);//按钮翻转效果生效
jb.setRolloverIcon(faces[1]);//鼠标置于其上时,显示图片
jb.setPressedIcon(faces[2]);//鼠标按下时,显示图片
jb.setDisabledIcon(faces[4]);//按钮不可用时,显示图片
jb.setToolTipText("Yow!");//鼠标置于其上时,显示汉字
cp.add(jb);
//按钮触发的事件
jb2.addActionListener(new ActionListener() ...{
public void actionPerformed(ActionEvent e) ...{
if (jb.isEnabled()) ...{
jb.setEnabled(false);
jb2.setText("Enable");//设置按钮显示文字
} else ...{
jb.setEnabled(true);
jb2.setText("Disable");
}
}
});
cp.add(jb2);
}
public static void main(String[] args) ...{
Faces applet = new Faces();
JFrame frame = new JFrame(applet.getClass().toString().substring(6));// 建立一个名字为Buttons的frame
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// frame关闭方法
frame.getContentPane().add(applet);
applet.init();
applet.start();
frame.setSize(600, 300);
frame.setVisible(true);
}
}
import java.awt.event.*;
public class Faces extends JApplet ...{
static String path = "E:/java/java编程思想源代码/c13/";
static Icon[] faces = ...{ new ImageIcon(path + "face0.gif"),
new ImageIcon(path + "face1.gif"),
new ImageIcon(path + "face2.gif"),
new ImageIcon(path + "face3.gif"),
new ImageIcon(path + "face4.gif"), };
JButton jb = new JButton("JButton", faces[3]),//构造函数中设置图片
jb2 = new JButton("Disable");
boolean mad = false;
public void init() ...{
Container cp = getContentPane();
cp.setLayout(new FlowLayout());
//按钮按下触发的事件
jb.addActionListener(new ActionListener() ...{
public void actionPerformed(ActionEvent e) ...{
if (mad) ...{
jb.setIcon(faces[3]);//设置按钮图片
mad = false;
} else ...{
jb.setIcon(faces[0]);
mad = true;
}
jb.setVerticalAlignment(JButton.TOP);//设置图标和文本的垂直对齐方式。
jb.setHorizontalAlignment(JButton.LEFT);//设置图标和文本的水平对齐方式
}
});
jb.setRolloverEnabled(true);//按钮翻转效果生效
jb.setRolloverIcon(faces[1]);//鼠标置于其上时,显示图片
jb.setPressedIcon(faces[2]);//鼠标按下时,显示图片
jb.setDisabledIcon(faces[4]);//按钮不可用时,显示图片
jb.setToolTipText("Yow!");//鼠标置于其上时,显示汉字
cp.add(jb);
//按钮触发的事件
jb2.addActionListener(new ActionListener() ...{
public void actionPerformed(ActionEvent e) ...{
if (jb.isEnabled()) ...{
jb.setEnabled(false);
jb2.setText("Enable");//设置按钮显示文字
} else ...{
jb.setEnabled(true);
jb2.setText("Disable");
}
}
});
cp.add(jb2);
}
public static void main(String[] args) ...{
Faces applet = new Faces();
JFrame frame = new JFrame(applet.getClass().toString().substring(6));// 建立一个名字为Buttons的frame
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// frame关闭方法
frame.getContentPane().add(applet);
applet.init();
applet.start();
frame.setSize(600, 300);
frame.setVisible(true);
}
}
本例演示了,按钮在不同的状态下能够显示不同的问题和图片。让按钮有了更好的动画效果
- Java开发工程师是怎样炼成的------按钮篇(Buttons)之三
- Java开发工程师是怎样炼成的------按钮篇(Buttons)之二
- Java开发工程师是怎样炼成的------按钮篇(Buttons)之一
- Java开发工程师是怎样炼成的------文本块篇(Text fields)
- Java开发工程师是怎样炼成的------边框篇(Borders)
- 嵌入式工程师是怎样炼成的(三)---- 初涉职场
- 嵌入式工程师是怎样炼成的(三)---- 初涉职场
- 嵌入式工程师是怎样炼成的(三)---- 初涉职场
- Java开发工程师是怎样炼成的------ArrayList(1)
- 嵌入式工程师是怎样炼成的
- 嵌入式工程师是怎样炼成的
- 嵌入式工程师是怎样炼成的(一)(二)(三)(四)(五)(全收藏)
- 嵌入式工程师是怎样炼成的(一)---- 引言
- 嵌入式工程师是怎样炼成的(一)---- 引言
- 嵌入式工程师是怎样炼成的(二)---- 初来乍到
- 嵌入式工程师是怎样炼成的(四)---- 奋发图强
- 嵌入式工程师是怎样炼成的(一)---- 引言
- 嵌入式工程师是怎样炼成的(二)---- 初来乍到
- Delphi的下一步-2007-4-6
- 在ASP.NET 2.0中直接得到本页面生成的HTML代码
- 《Java与模式》学习笔记(5)——Singleton
- Linux 下安装支持SSL连接的 Mysql
- 详解css定位与定位应用
- Java开发工程师是怎样炼成的------按钮篇(Buttons)之三
- Gentoo Linux HPPA 手冊
- 网络攻击常用的命令(都是经典的)
- ASP.NET 2.0中给DropDownList服务器控件添加项的新方法
- Linux中实现内部进程通信
- 关于奇偶校验
- 几何algorithm
- XMPP资料
- 计算几何算法概览