我想使用下面的代码制作一个tic tac toe板。我不明白“this”在下面的代码中做了什么
button.addActionListener(本);
在做什么,为什么this
正在使用存在。
package guicollection;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class DrawTicTacToe extends GUIcollection
implements ActionListener {
private JButton button;
private JPanel pane1;
void drawTicTacToe() {
DrawTicTacToe frame = new DrawTicTacToe();
frame.setSize(400, 300);
frame.createGUI();
frame.setVisible(true);
}
private void createGUI() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
Container window = getContentPane();
window.setLayout(new FlowLayout());
pane1 = new JPanel();
pane1.setPreferredSize(new Dimension(300, 200));
pane1.setBackground(Color.yellow);
window.add(pane1);
button = new JButton("Prss me");
window.add(button);
**button.addActionListener(this);**
}
public void actionPerformed(ActionEvent event) {
Graphics paper = pane1.getGraphics();
paper.drawLine(90, 30, 90, 120);
paper.drawLine(135, 30, 135, 120);
paper.drawLine(60, 60, 165, 60);
paper.drawLine(60, 90, 165, 90);
}
}
为什么我不能用actionPerformed替换this
?
你的问题:“为什么我不能用的actionPerformed取代呢?”没有意义。 “this”引用一个DrawTicTacToe对象,该对象实现了ActionListener接口,而“actionPerformed”是方法。 addActionListener将ActionListener的实例作为参数。 –
当它已经评论它是一个确切的重复,那么为什么人们会回答这个问题。我们应该使用现有的资源。 –
@Abhishekkumar这些人有一个名字:* karma秃鹰*。 –