java - 如何将 JButton 设置为未修饰并删除 MouseListener

标签 java swing user-interface jbutton

我制作了一个 JButton,我试图删除默认情况下附带的“边框和颜色”鼠标事件。我尝试了以下方法:

 setUndecorated(true);

但这不是正确的代码。

有没有办法删除 JButton 带来的 MouseListener 并将 JButton 设置为您想要的装饰方式?

最佳答案

How to set a JButton to be undecorated...

如果您想玩一下按钮装饰,请查看 AbstractButton API(JButton 扩展自的类)。特别是这些方法:

  • setContentAreaFilled(boolean flag) :设置 contentAreaFilled 属性。如果true按钮将绘制内容区域。如果您希望有一个透明按钮,例如仅图标按钮,那么您应该将其设置为 false

  • setBorderPainted(boolean flag) :设置 borderPainted 属性。如果为 true 并且按钮有边框,则绘制边框。

  • setRolloverEnabled(boolean flag) : 设置 rolloverEnabled 属性,该属性对于翻转必须为 true 发生的影响。

  • JComponent.setBorder(null) :由于某些外观可能不支持 borderPainted 属性,在这种情况下它们会忽略此属性,因此您可能需要将按钮边框设置为 null

...and remove the MouseListener

不明白你的意思,但我怀疑你想摆脱按下按钮时发生的动画或滚动效果。如果是这种情况,那么使用上面提到的方法就足够了。

关于java - 如何将 JButton 设置为未修饰并删除 MouseListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22427057/

相关文章:

java - 如何将 POJO bean 绑定(bind)到公共(public)标题页

java - InetAddress.getLocalHost() 运行缓慢(30 秒以上)

java - 使用 hsb 模型 Java 制作背景颜色动画

Java Swing : NullPointerException in own created resizable GUI

Powershell 计时器 - 更新 gui

jquery - 浏览器 View 内容折叠,窗口最小化时?

css - 使用透明图像并重复

java - RadixSort 算法运行时

java - 调度的Executor任务线程发生异常如何通知主线程?

java - 多个相似面板