gpt4 book ai didi

Java:对 Button 使用 setText() 方法时出现问题

转载 作者:行者123 更新时间:2023-12-01 16:41:37 24 4
gpt4 key购买 nike

我是 java 新手,我正在尝试交换我创建的按钮上的文本。我的主类的代码如下:

import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.*;

public class TeamProject extends Applet implements ActionListener, MouseListener
{
char[][] charValues = new char[10][10];
Table aTable;
boolean allowUserInput = false;
Button BtnStart;
Button randomChangeBtn;
boolean guessMode;
private AudioClip[] sounds = new AudioClip[5];
private int counter = 0;
//JSObject jso;

public void init()
{
//setup buttons
BtnStart = new Button("add row/column");
BtnStart.addActionListener((ActionListener)this); //cast
randomChangeBtn = new Button("change one value");
randomChangeBtn.addActionListener((ActionListener)this);

//add button
this.add(BtnStart);

//add image to Image objects
Image imgO = getImage(getCodeBase(), "images/not.gif");
Image imgX= getImage(getCodeBase(), "images/cross.gif");

//setup table
aTable = new Table(100, 100, 75, 55, 5, 5, imgX, imgO);

//setBackground(Color.LIGHT_GRAY);
super.resize(700, 700);

//add mouse listener
addMouseListener(this);

//initially guessMode will be false
guessMode = false;

//to talk to javascript
//jso = JSObject.getWindow(this);

sounds[0] = getAudioClip (getCodeBase(), "images/buzzthruloud.wav");
sounds[1] = getAudioClip (getCodeBase(), "images/inconceivable4.wav");
sounds[2] = getAudioClip (getCodeBase(), "images/foghorn.wav");
sounds[3] = getAudioClip (getCodeBase(), "images/waiting.wav");
sounds[4] = getAudioClip (getCodeBase(), "images/whistldn.wav");
}

public void paint(Graphics g)
{
g.setColor(Color.black);
aTable.draw(g);
}

//Mouse listener methods
public void mousePressed (MouseEvent e)
{
if(!guessMode){
if ((allowUserInput)){
aTable.swapSquareValue(e.getX(), e.getY());
repaint();
}
}
else{
System.out.println("guessed row = " + e.getY() + " guessed col = " + e.getX());
if(aTable.checkGuess(e.getX(), e.getY())){
int n = JOptionPane.showConfirmDialog(null, "Excellent!! Would you like to progress to next level",

"Correct!!!", JOptionPane.YES_NO_OPTION);

if (n == JOpionPane.YES_OPTION) {


}
else{

JOptionPane.showMessageDialog(null, "Nope", "alert", JOptionPane.INFORMATION_MESSAGE);

sounds[counter].play();

}



//repaint();

}



}



public void mouseClicked (MouseEvent e) {}

public void mouseEntered (MouseEvent e) {}

public void mouseReleased (MouseEvent e) {}

public void mouseExited (MouseEvent e) {}



//Button action listener

public void actionPerformed(ActionEvent e)

{

if (e.getSource() == BtnStart) {

aTable.addRow();

aTable.addColumn();

BtnStart.setText("Roseindia.net");

//this.remove(BtnStart);

//this.add(randomChangeBtn);

super.resize(700, 700);

repaint();

}

else if (e.getSource() == randomChangeBtn) {

aTable.randomChangeFunc();

repaint();

guessMode = true;

}



allowUserInput = true;

System.out.println(aTable.toString());

}



}

我正在尝试在我的actionPerformed(ActionEvent e) 方法中更改为文本。就像我说的,我是新人,所以请温柔点。谢谢:)

最佳答案

您正在使用java.awt.Button。 java.awt.Button 中没有 setText() 方法。您可以使用 setLabel(String) 代替。

而且您也不必导入 java.lang.*,因为默认情况下 java.lang 包可供所有 Java 程序使用。

如果你改变线路:

 Button BtnStart;

 JButton BtnStart;

 BtnStart = new Button("add row/column");

 BtnStart = new JButton("add row/column");

然后您将使用 Swing Button,并且您将能够调用 setText();

关于Java:对 Button 使用 setText() 方法时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1626658/

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