我正在使用Java Swing开发一个桌面应用程序供我个人使用.我的应用程序需要一些漂亮的外观和感觉.如何使用Java或第三方API来完成?
我正在尝试创建一个具有自定义形状(六边形)的按钮,但其他方式就像普通的JButton一样(也就是说,与ActionListener一起使用).
我创建了一个扩展AbstractButton的类,但是当我单击它时它似乎没有向ActionListener发送事件.如果我更改类以扩展JButton它可以很好地工作,但它会搞砸按钮的显示方式.我假设有一个方法需要覆盖以使其触发事件,但我无法弄清楚它是什么.
我有一个JFrame,我正在放几个JButton.一半的JButton有颜色编码 - 即我在X事件发生时将它们变成蓝色 - 我使用btn.setBackgroundColor(Color).当我使用setBackgroundColor时,我可以看到我看起来正常的JButton具有着色/着色/具有setBackgroundColor的那些没有.我已经尝试使颜色在有限的程度上透明,但我仍然得到一个平坦的颜色块,而不是有色版本的阴影按钮.
这似乎应该是一个很容易修复的东西,但它现在正在困扰我.我不想改变默认的LAF - 没关系.我不想放弃变色.我确实希望按钮都显示为样式(我用于HTML的单词).
所以我在这里错过了什么....它是什么?
编辑添加:
JFrame frame = new JFrame();
frame.add(new JButton("42"));
JButton btn24 = new JButton("24");
btn24.setBackground(Color.red);
frame.add(btn24);
frame.setVisible(true);
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,"42"将在我的Windows机器上显示底部和顶部的轻微颜色变化,从而创建圆形和阴影效果."24"按钮将显示红色方块.我的问题是:有没有办法让"24"显示圆形/阴影/样式与顶部的红色色调?或者我是否需要简单地将所有按钮制成扁平方块以获得统一的外观?
谢谢!
如何在单击时用不同的渐变重新绘制JButton.我已经覆盖了paintComponent(Graphics)方法来进行初始绘制.Onclick我想要重新绘制它,但我不希望用户在actionperformed事件中执行此操作,因为我希望它是一个独立的组件.
任何想法如何实现这一目标.
谢谢