gpt4 book ai didi

java - 在操作监听器中找不到符号错误

转载 作者:行者123 更新时间:2023-12-02 02:08:28 25 4
gpt4 key购买 nike

对于我们计算机数学课的期末项目,我们必须制作一个游戏,我的小组正在玩井字棋

import javax.swing.JFrame;
import java.awt.Container;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.*;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.*;
import java.awt.event.*;



public class Driver extends JFrame
{

public static void main(String[] args)
{
Driver gst = new Driver();
JFrame frame = new JFrame("Tic Tac Toe");
frame.setSize(1280, 720);
frame.setLocation(200, 100);


gst.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
gst.pack();
gst.setVisible(true);
}

public Driver()
{
Container pane = getContentPane();
pane.setLayout(new GridLayout(3, 3));
pane.setPreferredSize(new Dimension(600, 600));

////////Buttons////////
//1,1
JButton oneOnebutton = new JButton();
pane.add(oneOnebutton);
oneOnebutton.addActionListener(new oneOneListener());
oneOnebutton.setBackground(Color.WHITE);

//1,2
JButton oneTwobutton = new JButton();
pane.add(oneTwobutton);
oneTwobutton.addActionListener(new oneTwoListener());
oneTwobutton.setBackground(Color.WHITE);

//1,3
JButton oneThreebutton = new JButton();
pane.add(oneThreebutton);
oneThreebutton.addActionListener(new oneThreeListener());
oneThreebutton.setBackground(Color.WHITE);

//2,1
JButton twoOnebutton = new JButton();
pane.add(twoOnebutton);
twoOnebutton.addActionListener(new twoOneListener());
twoOnebutton.setBackground(Color.WHITE);

//2,2
JButton twoTwobutton = new JButton();
pane.add(twoTwobutton);
twoTwobutton.addActionListener(new twoTwoListener());
twoTwobutton.setBackground(Color.WHITE);

//2,3
JButton twoThreebutton = new JButton();
pane.add(twoThreebutton);
twoThreebutton.addActionListener(new twoThreeListener());
twoThreebutton.setBackground(Color.WHITE);

//3,1
JButton threeOnebutton = new JButton();
pane.add(threeOnebutton);
threeOnebutton.addActionListener(new threeOneListener());
threeOnebutton.setBackground(Color.WHITE);

//3,2
JButton threeTwobutton = new JButton();
pane.add(threeTwobutton);
threeTwobutton.addActionListener(new threeTwoListener());
threeTwobutton.setBackground(Color.WHITE);

//3,3
JButton threeThreebutton = new JButton();
pane.add(threeThreebutton);
threeThreebutton.addActionListener(new threeThreeListener());
threeThreebutton.setBackground(Color.WHITE);


}
int turn = 1;


private class oneOneListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{

oneOnebutton.setText("x");




}
}

//******1,2******//
private class oneTwoListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}



//******1,3*********//
private class oneThreeListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}


//******2,1*********//
private class twoOneListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}

//******2,2*********//
private class twoTwoListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}

//******2,3*********//
private class twoThreeListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}

//******3,1*********//
private class threeOneListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}


//******3,2*********//
private class threeTwoListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}

//******3,3*********//
private class threeThreeListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{





}
}
}

如果你向下滚动到 Action 监听器,我有一个名为 oneOne 的按钮的 Action 监听器设置(我拥有的 3x3 网格上的 1,1)它给我一个错误,指出指向 oneOne 并说找不到符号,我能做些什么来解决这个问题?

最佳答案

oneOnebuttonDirverConstructor 中定义为局部变量,您无法从 Constructor.

您可以创建 Dirver 的类成员。

public class Driver extends JFrame {
JButton oneOnebutton;
....
}

并在构造函数中启动:

public Driver() {
....
oneOnebutton = new JButton();
....
}

这可以确保 oneOnebuttononeOneListener 中可用。

关于java - 在操作监听器中找不到符号错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50403458/

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