如何将单词的字符添加到JButtons?
我使用 For loop 在Panel上绘制JButtons。 JButton的数量取决于单词的长度。我正在使用数组在那里添加单词。
一系列文字
String words[] = {"JAVA" , "FLOAT" , "VOID", "MAIN" , "STATIC", "FINAL", "PRIVATE" , "CHAR" , "ÏF" , "ELSE", "WHILE" ,
"DO" , "BOOLEAN" , "TRY" , "CATCH" , "SWITCH" , "CASE" , "STRING" , "INT" , "DOUBLE"};
这是从单词数组中选择随机单词的字符串
String word = words[myRandom.nextInt(words.length)];
这是用于绘制JButtons的For循环。如上所述,JButton的数量取决于WORD的长度
for(int i = 1; i <= word.length(); i++)
{
Buttons[i] = new JButton();
Buttons[i].setPreferredSize(new Dimension(80, 80));
gridConstraints.gridx = 0;
gridConstraints.gridy = 0;
second.add(Buttons[i]);
second.add(Box.createHorizontalStrut(20));
}
所以现在我的问题是,我想在JButtons上显示这个词
例如:Word DO ,因此,这将允许 For循环绘制两个JButton,现在我想,一个Jbutton将显示单词“D “&amp;另一个JButton会显示“O”这个词。
答案 0 :(得分:1)
首先,正如在提到的评论中,您需要为每个JButton设置charAt(i)。在我查看时,您我的值是正确的。而charAt(i)从零开始。所以,当你有i = 1的值时,你只需要从那里减去1(i-1),这肯定会起作用....:)
for(int i = 1; i <= word.length(); i++)
{
Buttons[i] = new JButton();
Buttons[i].setPreferredSize(new Dimension(80, 80));
Buttons[i].setText(word.charAt(i-1) + "");
second.add(Buttons[i]);
second.add(Box.createHorizontalStrut(20));
}