我想在Java Swing应用程序中创建一组按钮,就像您在绘画程序中的典型工具调色板中获得的一样。也就是说,一组小方形按钮,每个按钮都包含一个图标,只有其中一个被按下,当您按另一个按钮时,第一个按钮将被取消选择。我想到了许多解决方案,而且它们都不是很容易/优雅。矩形Java Swing单选按钮?
这听起来像是一个JRadioButton的工作,但如果你添加一个图标到那个,你仍然会得到一个小的圆圈,这是相当低效的空间。我猜想一个选项会为JRadioButton找到另一个外观和感觉或绘画代码。
另一种方法是将JButton添加到ButtonGroup中,可能会将JToggleButton.ToggleButtonModel设置为模型,但这不会产生所需的效果,因为标准JButton的绘画代码在选中时不会保持其压低。 JButton代码可能会被修改来做到这一点。就像使它“按”选择“的方式一样。
第三种方法是使用普通的JButton,并添加一个常用的鼠标监听器来保持它们不被按下,并在按钮之间传递变化。
任何人都可以建议最好的方法来实现目标吗?我错过的一个简单方法是最好的,但是关于这三种方法中哪一种最好的建议以及如何开始的指导也很有用。
从Swing指南:“JToggleButton中可能是有用的当你不想要典型的单选按钮或复选框外观。“ – toto2 2011-06-01 17:52:20
完美,谢谢。我以为会有一些容易丢失的东西。 – 2011-06-01 20:33:30