使 JButton 不可见,但可点击?
Posted
技术标签:
【中文标题】使 JButton 不可见,但可点击?【英文标题】:Making a JButton invisible, but clickable? 【发布时间】:2011-08-04 23:34:29 【问题描述】:如何在java中制作一个不可见但可点击的JButton?
button.setVisible(false);
使按钮不可见,但不可点击,有什么方法可以使其不可见,但可点击?
我试过了:
button.setVisible(false);
button.setEnabled(true);
但这也没有用。 我想这样做是因为我想要一个带有图像的按钮,如果我将不可见的 JButton 放在图像上,当您单击图像或不可见的按钮时,该按钮会做出响应。
【问题讨论】:
帮帮我,学习 Java 吧?我只是不想创建一个隐形按钮,就这么简单。 哇,今天大家都觉得有点苛刻了吗?让我们都尊重。 如果你想构建一个复活节彩蛋,点击一个小但不可见的按钮会弹出一个游戏,你必须用一对带静电的黄瓜把猫赶到一个盒子里?放轻松,这是一个有效的问题。 @Town:我认为有一个功能:new JInvisibleStaticCucumberBoxCatButton()
@Jeff B - 措辞不好,这是一个类:P
【参考方案1】:
我认为你的意思是透明的,而不是不可见的。
这将使可点击的按钮不“可见”,即透明:
button.setOpaque(false);
button.setContentAreaFilled(false);
button.setBorderPainted(false);
这回答了您提出的问题,但如果您的目的是使图像可点击,那么也有更好的方法:
ImageIcon myImage = new ImageIcon("images/myImage.jpg");
JButton button = new JButton(myImage);
【讨论】:
是的,这正是我想要的!谢谢! 是的,它说我必须等待 1 分钟。 哦,我还有一个小问题,如何更改 JButton 的边框颜色? @Stan - 看看setBorder
方法:)【参考方案2】:
好吧,没有意义,因为没有意义,所以没有标准的方法可以做到这一点,但是可以覆盖 JButton 的paint方法并且什么都不做:
class InvisibleButton extends JButton
@Override
public void paint(Graphics g)
// Do nothing here
试试这个。
【讨论】:
以上是关于使 JButton 不可见,但可点击?的主要内容,如果未能解决你的问题,请参考以下文章
android中点击button使layout不可见,再次点击可见
如何使用 C# 中的 System.Xml.Serialization 使对象不可变但可序列化?