我正在尝试构建一个数独板。现在我只是试图让董事会画画,我试图画线,但被告知这更好....我还没有得到这个工作的作品。关于我做错的任何提示
import java.awt.Component;
import java.awt.GridLayout;
import javax.swing.*;
public class SudokuView4 extends JPanel {
int rows = 3;
int col = 3;
public JPanel container = new JPanel(new GridLayout(rows*col,rows*col));
public SudokuView4(SudokuBase sb) {
// TODO Auto-generated constructor stub
for(int r = 0; r < rows; r++){
for(int c = 0; c < col; c++){
//container.add(Region(rows,col));
//add(build);
//build.setSize(50, 50)
Region();
container.setVisible(true);
}
}
}
//class Region extends JPanel {
public void Region( ) {
//setLayout(new GridLayout(3,3));
//JPanel grid = new JPanel(new GridLayout(3,3));
//grid.setSize(50, 50);
for(int r1 = 0; r1 < rows; r1++){
for(int c1 = 0; c1 < col; c1++){
//JPanel grid = new JPanel();
JButton build = new JButton();
container.add(build);
//container.setVisible(true);
}
}
}
}
答案 0 :(得分:1)
JPanel容器需要放在JFrame内部,并在添加按钮后更新。这是因为您的目标是运行Java应用程序。
import java.awt.Component;
import java.awt.GridLayout;
import javax.swing.*;
public class SudokuView4 extends JPanel {
int rows = 3;
int col = 3;
public JPanel container = new JPanel(new GridLayout(rows*col,rows*col));
// added main for testing
public static void main(String [] args){
SudokuView4 sudoku = new SudokuView4();
}
public SudokuView4(/*SudokuBase sb*/) {
// TODO Auto-generated constructor stub
JFrame frame = new JFrame();
frame.add(container);
for(int r = 0; r < rows; r++){
for(int c = 0; c < col; c++){
//container.add(Region(rows,col));
//add(build);
//build.setSize(50, 50)
Region();
container.setVisible(true);
}
}
frame.setSize(300,300);
frame.setVisible(true);
}
//class Region extends JPanel {
public void Region( ) {
//setLayout(new GridLayout(3,3));
//JPanel grid = new JPanel(new GridLayout(3,3));
//grid.setSize(50, 50);
for(int r1 = 0; r1 < rows; r1++){
for(int c1 = 0; c1 < col; c1++){
//JPanel grid = new JPanel();
JButton build = new JButton();
container.add(build);
//container.setVisible(true);
}
}
}
}