【发布时间】:2011-09-27 00:39:01
【问题描述】:
我发现了如何使用以下代码将 JButton 保持在按下状态:
JButton[] buttons;
.
.
.
public void actionPerformed(ActionEvent e)
{
for(int i = 0; i < buttons.length; i++)
{
if(e.getSource() == buttons[i])
{
buttons[i].getModel().setPressed(true);
}
else
{
buttons[i].getModel().setPressed(false);
}
}
}
此代码捕获单击的按钮,使其保持按下状态,并使面板上的所有其他按钮未按下。这段代码效果很好......直到窗口失去焦点(或者更具体地说,它的父 JPanel 失去焦点)。之后,所有的按钮都返回到非按下状态。
现在关于如何编写 WindowFocusListeners 的教程已经下架。有没有办法让 JButton 的按下状态在失去焦点时保持不变?
【问题讨论】:
-
选择一个答案小伙伴。你问这个已经快 4 年了