gpt4 book ai didi

java - JTextFields 没有显示,但它们仍然存在。 (第一个是 "bugily"可见)

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

一小时前它就工作了,但我一定对代码做了什么,但我不知道是什么。我的 JTextField 没有显示,但如果我将它们设置为可编辑,它们仍然存在。第一个 JTextField 确实出现了,但看起来很奇怪。任何想法有什么问题吗? (我将我的 JTextField 称为“Square”)。大小 = 10

package gui;

import javax.swing.*;
import engine.GameEngine;
import java.awt.*;
import java.util.*;

public class MineFieldGUI extends JFrame {
private GameEngine engine;
Square[][] field;
int size = 10;

public MineFieldGUI(GameEngine minefield) {
super("MineField");
this.engine = minefield;
this.size = minefield.getSize();

setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

this.setSize(300, 350);
Locale.setDefault(new Locale("en"));

setLayout(new BorderLayout());

JMenuBar menubar = new JMenuBar();
setJMenuBar(menubar);
JMenu helpMenu = new JMenu("Help");
menubar.add(helpMenu);
helpMenu.add(new HelpMenu(this));



//***THE MINE-FIELD***
JPanel panel = new JPanel(new GridLayout(size,size));
field = new Square[size][size];
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
field[i][j] = new Square(i, j);
panel.add(field[i][j]);
}
}
add(panel, BorderLayout.CENTER);
setVisible(true);
}

public void setColor(int x, int y){
field[x][y].setBackground(Color.lightGray);
}

public void setText(int x, int y, String text){
field[x][y].setText(text);
}

public String getText(int x, int y){
return field[x][y].getText();
}
}

我的文本字段:

package gui;
import java.awt.Color;
import javax.swing.JTextField;

public class Square extends JTextField {

int posX;
int posY;

public Square(int x, int y) {
super("");
posX = x;
posY = y;

this.setEditable(false);
this.setBackground(Color.lightGray);
}

public int getX(){
return posX;
}
public int getY(){
return posY;
}

}

最佳答案

删除布局管理器用来定位 Square 组件的方法 getXgetY。这将使布局管理器正确定位按钮。

关于java - JTextFields 没有显示,但它们仍然存在。 (第一个是 "bugily"可见),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26804324/

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