繁体   English   中英

需要使用 JButton ActionListener 的建议

[英]Need advice on using the JButton ActionListener

我需要关于如何使用代码 actionlistener 的帮助或指导,以便我可以循环 jButton。 它乘以 16,因为它是从 txt 文件中读取的文件中的字数。

import java.awt.Container;
import java.io.*;
import javax.swing.*;
import java.awt.event.*;

public class wordGame extends JFrame implements ActionListener {

}

int index = (int)(Math.random()*16);
StringBuffer s = new StringBuffer(words[index]);
String sh = "";
bb = words[index];
int counter = s.length();
Container pane = getContentPane();
JFrame panel = new JFrame();
JButton b[] = new JButton [16];
int i;

while (s.length() != 0) {
    int j = (int)(Math.random() * s.length());
    sh = sh + s.charAt(j);
    s.deleteCharAt(j);
} 

if (counter == 5){
    for (i = 0; i < 5; i++)  {
        b = new JButton[i];
        panel.add(b[i]);
    }

    pane.add(panel);
    for (int j = 0; j< 5; j++)   {
        b[i].setText(String.valueOf(sh.charAt(j)));
        jButton1.setText(String.valueOf(sh.charAt(0)));
        jButton2.setText(String.valueOf(sh.charAt(1)));
        jButton3.setText(String.valueOf(sh.charAt(2)));
        jButton4.setText(String.valueOf(sh.charAt(3)));

        jButton6.setVisible(false);
        jButton7.setVisible(false);
        jButton8.setVisible(false);
    }
}

你的意思是你想遍历它们吗?

如果是这种情况,我可能会使用多维数组(或数组列表)。

JButton[][] bttns = new JButton[5][16]();
for(int i = 0; i < bttns.length; i++)
{
    for(int i2 = 0; i2 < bttns[0].length; i2++)
    {
        bttns[i][i2].setText( String.valueOf(sh.charAt(i*bttns[0].length + i2)) );
        bttns[i][i2].setVisible(True);;
    }
}

等等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM