gpt4 book ai didi

java - 按钮消失,照片出现在其位置

转载 作者:行者123 更新时间:2023-11-30 07:42:19 26 4
gpt4 key购买 nike

我已经创建了JButtons,我想要的是当我点击它们消失时,一张照片占据其空白区域并且>透露。这是我的存储卡游戏的一部分,但我找不到在代码中实现这一点的方法。.这就是我的按钮监听器到目前为止所做的事情

private class Disappear implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
int count =0;
for(int i=0; i<52;i++)
{
if(!buttons[i].isVisible())
{
count+=1;
}
}
if(count<2)
((JButton)e.getSource()).setVisible(false);

if(count==2)
{
for(int i=0; i<52;i++)
{
if(!buttons[i].isVisible())
{
buttons[i].setVisible(true);
}
}
}
}
}

最佳答案

您可以尝试使用 JToggleButton 而不是常规按钮。每当按下 JToggleButton 时,就会显示不同的/新的图像:

class MemGame implements ActionListener(){  

ImageIcon img = new ImageIcon("Back.png"); /* Back of the card */
ImageIcon img2 = new ImageIcon("D1.png"); /* Card face */

/* Constructor */
MemGame(){
JFrame jfrm = new JFrame("Memory Game");
jfrm.setSize(220, 250);
jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jfrm.setLayout(new FlowLayout());

JToggleButton jt1 = new JToggleButton(img);
jt1.addActionListener(this);

jfrm.getContentPane().add(new JLabel("Select a card"));
jfrm.getContentPane().add(jt1);
jfrm.setVisible(true);
}

public void actionPerformed(ActionEvent ae){
JToggleButton jt = (JToggleButton)ae.getSource();
if (!jt.isSelected()) jt.setIcon(img);
else jt.setIcon(img2);
}
}

从这里添加处理多张卡按下等的逻辑。

<小时/>

结果
Before button is pressed
After button is pressed

<小时/>

信用到期的信用:卡牌图片来自:whttps://thenounproject.com/term/ace-of-diamonds/170620/和 whttps://thenounproject.com/term/playing-card/146000/

关于java - 按钮消失,照片出现在其位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34474386/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com