我正在尝试JPanel使用i.add(jp, BorderLayout.EAST);它来设置我的位置,但它不起作用.有什么想法吗?我在这里先向您的帮助表示感谢.
/* INSTANCE DECLARATIONS */
private JTextField tf;//text field instance variable
private JLabel jl2;//label instance variable
/*****************
* WINDOW METHOD *
* ***************/
public void window() {
LoadImageApp i = new LoadImageApp();//calling image class
JFrame gameFrame = new JFrame();//declaration
JPanel jp = new JPanel();
JLabel jl = new JLabel("Enter a Letter:");//prompt with label
tf = new JTextField(1);//length of text field by character
jl2 = new JLabel("Letters Used: ");
jp.add(jl);//add label to panel
jp.add(tf);//add text field …Run Code Online (Sandbox Code Playgroud) 我的for循环没有更新,我得到用户每次输入的相同字母的输出"mmmmmm"或"ffffff".我希望它每次都能不断更新下一个字母,如下所示:
用户输入:m
用户输入:f
用户输入:d
输出:"使用的字母:mfd"
int j = 0;
String []used = new String[6];
for(j = 0; j<6; j++){
used[j] = tf.getText(); //get user input
}
jl2.setText("Letters Used: " + used[0] + used[1] + used[2] + used[3] + used[4] + used[5] );
Run Code Online (Sandbox Code Playgroud) 我在增加我的计数器方面遇到了一些困难.不是递增它而是不断地打印1并且不将数字加在一起.我尝试使用另一个变量来累计计数器,但没有运气.任何想法,为什么它不增加?
码:
tf.addActionListener(new ActionListener() {
int wrong = 0;
int right = 0;
@Override
public void actionPerformed(ActionEvent e) {// enter key
JTextField tf = (JTextField) e.getSource();
letter = tf.getText();
tf.setText("");
// tf.requestFocus();
jlLetsUsed.setText(jlLetsUsed.getText() + letter + " ");// sets
char[] jlabelText = jlLines.getText().toCharArray();// converts
char userEnteredChar = letter.charAt(0);
System.out.println(wordList[level]);
if (!wordList[level].contains(letter)) {
wrong++;
if (wrong == 6) {
JOptionPane.showMessageDialog(frame,
"He's dead, game over." + "\n"
+ "The word was " + wordList[level]
+ ".", "You Lost",
JOptionPane.INFORMATION_MESSAGE, ic);
GameStructure restart …Run Code Online (Sandbox Code Playgroud)