java -- 如何让每次点击按钮时出现新的文本块
java -- how to make new text block appear every time a button is clicked
我是 Java 的新手,正在尝试使用 swing 制作一个简单的带有 GUI 的交互式小说游戏。现在我正试图将一大块文本分成几个部分,以便它可以轻松地适应屏幕。我希望在屏幕底部带有 "continue" Jbutton 的 Jtextarea 中显示一段文本,每次用户单击 Jbutton 时,当前文本都会消失并被新文本替换。这是相关代码:
public class forwardScreenHandler implements ActionListener{
public void actionPerformed(ActionEvent event){
mainTextArea.setText("Nice change!");
mainTextArea.setText("do it again!");
mainTextArea.setText("Please be third!");
}
}
public void chooseYes(){
yesnoButtonPanel.setVisible(false);
continueButtonPanel.setVisible(true);
continueButtonPanel.setBackground(Color.red);
continueButton.removeActionListener(contHandler);
continueButton.addActionListener(userCont);
position = "yes";
mainTextArea.setText("Blah Blah Blah");
}
很明显,代码将导致 "blah blah blah" 最初显示,然后当我单击继续按钮时最终的 setText "Please be third!"。我知道这是因为我没有编写任何代码告诉 Java 每次单击继续按钮时设置文本,但我不知道如何执行此操作。就像我说的我是初学者,所以任何解释都会有所帮助,这样我就可以理解该怎么做。
您需要使用变量和 if 语句来执行此操作。
在class级别声明一个变量来存储按钮被按下的次数:
private int buttonPressCount = 0;
在继续按钮的动作侦听器中,首先递增此变量,然后根据它的值设置文本。
buttonPressCount++;
switch (buttonPressCount) {
case 1:
mainTextArea.setText("Nice change!");
break;
case 2:
mainTextArea.setText("do it again!");
break;
case 3:
mainTextArea.setText("Please be third!");
}
我是 Java 的新手,正在尝试使用 swing 制作一个简单的带有 GUI 的交互式小说游戏。现在我正试图将一大块文本分成几个部分,以便它可以轻松地适应屏幕。我希望在屏幕底部带有 "continue" Jbutton 的 Jtextarea 中显示一段文本,每次用户单击 Jbutton 时,当前文本都会消失并被新文本替换。这是相关代码:
public class forwardScreenHandler implements ActionListener{
public void actionPerformed(ActionEvent event){
mainTextArea.setText("Nice change!");
mainTextArea.setText("do it again!");
mainTextArea.setText("Please be third!");
}
}
public void chooseYes(){
yesnoButtonPanel.setVisible(false);
continueButtonPanel.setVisible(true);
continueButtonPanel.setBackground(Color.red);
continueButton.removeActionListener(contHandler);
continueButton.addActionListener(userCont);
position = "yes";
mainTextArea.setText("Blah Blah Blah");
}
很明显,代码将导致 "blah blah blah" 最初显示,然后当我单击继续按钮时最终的 setText "Please be third!"。我知道这是因为我没有编写任何代码告诉 Java 每次单击继续按钮时设置文本,但我不知道如何执行此操作。就像我说的我是初学者,所以任何解释都会有所帮助,这样我就可以理解该怎么做。
您需要使用变量和 if 语句来执行此操作。
在class级别声明一个变量来存储按钮被按下的次数:
private int buttonPressCount = 0;
在继续按钮的动作侦听器中,首先递增此变量,然后根据它的值设置文本。
buttonPressCount++;
switch (buttonPressCount) {
case 1:
mainTextArea.setText("Nice change!");
break;
case 2:
mainTextArea.setText("do it again!");
break;
case 3:
mainTextArea.setText("Please be third!");
}