怎样用awt或者swing制作一个圆形的按钮?
怎样用awt或者swing制作一个圆形的按钮?注意上面要有图形哦,必须有图形哦。
不要文字。
最好使用swing , awt太麻烦。
小弟谢谢先!!!!!!!!!
双收捧着分送给你!!!!!!!
问题点数:50、回复次数:11Top
1 楼killme2008(为了生态平衡,请保护蛤蟆)回复于 2003-12-01 21:39:13 得分 2
这我倒没想过
能不能用图象处理工具先做个椭圆形Image,然后放进JButton?
大家谈谈吧Top
2 楼kypfos(不在寻梦)回复于 2003-12-01 21:45:35 得分 2
按钮上画个圆,其他区域是透明,设定响应点击区域为那个圆
点击时模拟按下去的状态
按好用JLable,因为JButton有它自己的响应点击的显示方式。Top
3 楼killme2008(为了生态平衡,请保护蛤蟆)回复于 2003-12-01 21:47:52 得分 0
在按钮上如何画图?Top
4 楼xiaoshuier(★)闪闪亮(★)回复于 2003-12-01 22:03:26 得分 2
为何不做一个按钮的图片呢?
那样子不就简单了吗?Top
5 楼wobelisk()回复于 2003-12-02 01:01:25 得分 35
create two icons with same size. one for noraml state, another for pressed state.
import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
class RoundButton extends JButton {
Shape shape;
public RoundButton() {
super();
Dimension size = new Dimension(60,60); //60 is the width and height of
// the button icon
setPreferredSize(size);
setContentAreaFilled(false);
setIcon(new ImageIcon("006a.gif")); //button icon
setPressedIcon(new ImageIcon("006b.gif")); //when pressed
}
protected void paintBorder(Graphics g) {
//do nothing here,
}
public boolean contains(int x, int y) {
if (shape == null || !shape.getBounds().equals(getBounds())) {
shape = new Ellipse2D.Float(0, 0, getWidth(), getHeight());
}
return shape.contains(x, y);
}
}Top
6 楼binbin2000(binbin)回复于 2003-12-02 10:11:03 得分 2
用JLabel,放圆行图片,然后在添加事件就行了。Top
7 楼alemjann(裸睡)回复于 2003-12-02 10:21:02 得分 2
Java Web Start 里面的 SwingSet2 App 里面有很多例子,不光是按钮,还有checkbox,radio什么的。有源代码,还可以直接看效果。Top
8 楼tomcatjava(小鱼儿)回复于 2003-12-02 11:06:12 得分 2
例子里面好像用的是图片放到相应的组建上的!
用paintComponent()方法也行吧Top
9 楼IEQQ(从小事做起)回复于 2003-12-02 14:07:04 得分 0
小弟已经做好了图片, 但是图片周围不是透明的。怎样把按钮设置成透明的 ?
谢谢各位兄台,小弟想再听取一些意见,稍后结帖!!Top
10 楼RogerNina(冰儿)回复于 2003-12-02 14:21:52 得分 2
我做过相似的东西,椭圆形的按钮
我觉得,要做圆形按钮,最好不要贴图片,而是直接画,然后再完成它的行为Top
11 楼tsd3698(灵素之心)回复于 2003-12-02 17:06:27 得分 1
加图形可以用JButton类的setIcon(Icon icon)方法Top




