繁体   English   中英

数独摆动/Awt Java

[英]Sudoku Swing/Awt Java

我几周前开始编码,我需要你的帮助。 我想用 Swing/AWT 做一个数独游戏。 我在谷歌上搜索了很多,但没有用

我的想法是将 4 个按钮设置在JTextField之上。 JTextField是数独字段。)当 GUI 首次出现时,数独字段不可见。 只有在我最大化 window 之后, JTextField才会出现。

import java.awt.*;
import javax.swing.*;
import javax.swing.border.LineBorder;

public class Sudokuu {
    public JFrame f;

    Sudokuu() {
        f = new JFrame("Sudoku");
        f.setVisible(true);
        f.setSize(1920, 1000);
        f.setLayout(new BorderLayout());
        JPanel p = new JPanel();
        p.setBorder(BorderFactory.createLineBorder(Color.cyan));
        p.setSize(700, 50);
        p.setVisible(true);
        p.setLayout(new FlowLayout());
        JButton o = new JButton("One Step");
        o.setSize(200, 50);
        JButton e = new JButton("Easy");
        e.setSize(200, 50);
        JButton m = new JButton("Medium");
        m.setSize(200, 50);
        JButton h = new JButton("Hard");
        h.setSize(200, 50);
        p.add(o);
        p.add(e);
        p.add(m);
        p.add(h);
        JPanel field = new JPanel();
        field.setLayout(new GridLayout(9, 9));
        field.setVisible(true);
        field.setSize(500, 500);
        f.add(p);
        f.add(field, BorderLayout.CENTER);
        JTextField tf = new JTextField("", 1);
        JTextField tf1 = new JTextField("", 1);
        JTextField tf2 = new JTextField("", 1);
        JTextField tf3 = new JTextField("", 1);
        JTextField tf4 = new JTextField("", 1);
        JTextField tf5 = new JTextField("", 1);
        JTextField tf6 = new JTextField("", 1);
        JTextField tf7 = new JTextField("", 1);
        JTextField tf8 = new JTextField("", 1);
        JTextField tf9 = new JTextField("", 1);
        JTextField tf10 = new JTextField("", 1);
        JTextField tf11 = new JTextField("", 1);
        JTextField tf12 = new JTextField("", 1);
        JTextField tf13 = new JTextField("", 1);
        JTextField tf14 = new JTextField("", 1);
        JTextField tf15 = new JTextField("", 1);
        JTextField tf16 = new JTextField("", 1);
        JTextField tf17 = new JTextField("", 1);
        JTextField tf18 = new JTextField("", 1);
        JTextField tf19 = new JTextField("", 1);
        JTextField tf20 = new JTextField("", 1);
        JTextField tf21 = new JTextField("", 1);
        JTextField tf22 = new JTextField("", 1);
        JTextField tf23 = new JTextField("", 1);
        JTextField tf24 = new JTextField("", 1);
        JTextField tf25 = new JTextField("", 1);
        JTextField tf26 = new JTextField("", 1);
        JTextField tf27 = new JTextField("", 1);
        JTextField tf28 = new JTextField("", 1);
        JTextField tf29 = new JTextField("", 1);
        JTextField tf30 = new JTextField("", 1);
        JTextField tf31 = new JTextField("", 1);
        JTextField tf32 = new JTextField("", 1);
        JTextField tf33 = new JTextField("", 1);
        JTextField tf34 = new JTextField("", 1);
        JTextField tf35 = new JTextField("", 1);
        JTextField tf36 = new JTextField("", 1);
        JTextField tf37 = new JTextField("", 1);
        JTextField tf38 = new JTextField("", 1);
        JTextField tf39 = new JTextField("", 1);
        JTextField tf40 = new JTextField("", 1);
        JTextField tf41 = new JTextField("", 1);
        JTextField tf42 = new JTextField("", 1);
        JTextField tf43 = new JTextField("", 1);
        JTextField tf44 = new JTextField("", 1);
        JTextField tf45 = new JTextField("", 1);
        JTextField tf46 = new JTextField("", 1);
        JTextField tf47 = new JTextField("", 1);
        JTextField tf48 = new JTextField("", 1);
        JTextField tf49 = new JTextField("", 1);
        JTextField tf50 = new JTextField("", 1);
        JTextField tf51 = new JTextField("", 1);
        JTextField tf52 = new JTextField("", 1);
        JTextField tf53 = new JTextField("", 1);
        JTextField tf54 = new JTextField("", 1);
        JTextField tf55 = new JTextField("", 1);
        JTextField tf56 = new JTextField("", 1);
        JTextField tf57 = new JTextField("", 1);
        JTextField tf58 = new JTextField("", 1);
        JTextField tf59 = new JTextField("", 1);
        JTextField tf60 = new JTextField("", 1);
        JTextField tf61 = new JTextField("", 1);
        JTextField tf62 = new JTextField("", 1);
        JTextField tf63 = new JTextField("", 1);
        JTextField tf64 = new JTextField("", 1);
        JTextField tf65 = new JTextField("", 1);
        JTextField tf66 = new JTextField("", 1);
        JTextField tf67 = new JTextField("", 1);
        JTextField tf68 = new JTextField("", 1);
        JTextField tf69 = new JTextField("", 1);
        JTextField tf70 = new JTextField("", 1);
        JTextField tf71 = new JTextField("", 1);
        JTextField tf72 = new JTextField("", 1);
        JTextField tf73 = new JTextField("", 1);
        JTextField tf74 = new JTextField("", 1);
        JTextField tf75 = new JTextField("", 1);
        JTextField tf76 = new JTextField("", 1);
        JTextField tf77 = new JTextField("", 1);
        JTextField tf78 = new JTextField("", 1);
        JTextField tf79 = new JTextField("", 1);
        JTextField tf80 = new JTextField("", 1);
        JTextField tf81 = new JTextField("", 1);

        // Setting the Line
        tf.setBorder(new LineBorder(Color.black, 2));
        tf1.setBorder(new LineBorder(Color.black, 2));
        tf2.setBorder(new LineBorder(Color.black, 2));
        tf3.setBorder(new LineBorder(Color.black, 2));
        tf4.setBorder(new LineBorder(Color.black, 2));
        tf5.setBorder(new LineBorder(Color.black, 2));
        tf6.setBorder(new LineBorder(Color.black, 2));
        tf7.setBorder(new LineBorder(Color.black, 2));
        tf8.setBorder(new LineBorder(Color.black, 2));
        tf9.setBorder(new LineBorder(Color.black, 2));
        tf10.setBorder(new LineBorder(Color.black, 2));
        tf11.setBorder(new LineBorder(Color.black, 2));
        tf12.setBorder(new LineBorder(Color.black, 2));
        tf13.setBorder(new LineBorder(Color.black, 2));
        tf14.setBorder(new LineBorder(Color.black, 2));
        tf15.setBorder(new LineBorder(Color.black, 2));
        tf16.setBorder(new LineBorder(Color.black, 2));
        tf17.setBorder(new LineBorder(Color.black, 2));
        tf18.setBorder(new LineBorder(Color.black, 2));
        tf19.setBorder(new LineBorder(Color.black, 2));
        tf20.setBorder(new LineBorder(Color.black, 2));
        tf21.setBorder(new LineBorder(Color.black, 2));
        tf22.setBorder(new LineBorder(Color.black, 2));
        tf23.setBorder(new LineBorder(Color.black, 2));
        tf24.setBorder(new LineBorder(Color.black, 2));
        tf25.setBorder(new LineBorder(Color.black, 2));
        tf26.setBorder(new LineBorder(Color.black, 2));
        tf27.setBorder(new LineBorder(Color.black, 2));
        tf28.setBorder(new LineBorder(Color.black, 2));
        tf29.setBorder(new LineBorder(Color.black, 2));
        tf30.setBorder(new LineBorder(Color.black, 2));
        tf31.setBorder(new LineBorder(Color.black, 2));
        tf32.setBorder(new LineBorder(Color.black, 2));
        tf33.setBorder(new LineBorder(Color.black, 2));
        tf34.setBorder(new LineBorder(Color.black, 2));
        tf35.setBorder(new LineBorder(Color.black, 2));
        tf36.setBorder(new LineBorder(Color.black, 2));
        tf37.setBorder(new LineBorder(Color.black, 2));
        tf38.setBorder(new LineBorder(Color.black, 2));
        tf39.setBorder(new LineBorder(Color.black, 2));
        tf40.setBorder(new LineBorder(Color.black, 2));
        tf41.setBorder(new LineBorder(Color.black, 2));
        tf42.setBorder(new LineBorder(Color.black, 2));
        tf43.setBorder(new LineBorder(Color.black, 2));
        tf44.setBorder(new LineBorder(Color.black, 2));
        tf45.setBorder(new LineBorder(Color.black, 2));
        tf46.setBorder(new LineBorder(Color.black, 2));
        tf47.setBorder(new LineBorder(Color.black, 2));
        tf48.setBorder(new LineBorder(Color.black, 2));
        tf49.setBorder(new LineBorder(Color.black, 2));
        tf50.setBorder(new LineBorder(Color.black, 2));
        tf51.setBorder(new LineBorder(Color.black, 2));
        tf52.setBorder(new LineBorder(Color.black, 2));
        tf53.setBorder(new LineBorder(Color.black, 2));
        tf54.setBorder(new LineBorder(Color.black, 2));
        tf55.setBorder(new LineBorder(Color.black, 2));
        tf56.setBorder(new LineBorder(Color.black, 2));
        tf57.setBorder(new LineBorder(Color.black, 2));
        tf58.setBorder(new LineBorder(Color.black, 2));
        tf59.setBorder(new LineBorder(Color.black, 2));
        tf60.setBorder(new LineBorder(Color.black, 2));
        tf61.setBorder(new LineBorder(Color.black, 2));
        tf62.setBorder(new LineBorder(Color.black, 2));
        tf63.setBorder(new LineBorder(Color.black, 2));
        tf64.setBorder(new LineBorder(Color.black, 2));
        tf65.setBorder(new LineBorder(Color.black, 2));
        tf66.setBorder(new LineBorder(Color.black, 2));
        tf67.setBorder(new LineBorder(Color.black, 2));
        tf68.setBorder(new LineBorder(Color.black, 2));
        tf69.setBorder(new LineBorder(Color.black, 2));
        tf70.setBorder(new LineBorder(Color.black, 2));
        tf71.setBorder(new LineBorder(Color.black, 2));
        tf72.setBorder(new LineBorder(Color.black, 2));
        tf73.setBorder(new LineBorder(Color.black, 2));
        tf74.setBorder(new LineBorder(Color.black, 2));
        tf75.setBorder(new LineBorder(Color.black, 2));
        tf76.setBorder(new LineBorder(Color.black, 2));
        tf77.setBorder(new LineBorder(Color.black, 2));
        tf78.setBorder(new LineBorder(Color.black, 2));
        tf79.setBorder(new LineBorder(Color.black, 2));
        tf80.setBorder(new LineBorder(Color.black, 2));
        tf81.setBorder(new LineBorder(Color.black, 2));

        // adding buttons to the frame
        field.add(p);
        field.add(tf1);
        field.add(tf2);
        field.add(tf3);
        field.add(tf4);
        field.add(tf5);
        field.add(tf6);
        field.add(tf7);
        field.add(tf8);
        field.add(tf9);
        field.add(tf10);
        field.add(tf11);
        field.add(tf12);
        field.add(tf13);
        field.add(tf14);
        field.add(tf15);
        field.add(tf16);
        field.add(tf17);
        field.add(tf18);
        field.add(tf19);
        field.add(tf20);
        field.add(tf21);
        field.add(tf22);
        field.add(tf23);
        field.add(tf24);
        field.add(tf25);
        field.add(tf26);
        field.add(tf27);
        field.add(tf28);
        field.add(tf29);
        field.add(tf30);
        field.add(tf31);
        field.add(tf32);
        field.add(tf33);
        field.add(tf34);
        field.add(tf35);
        field.add(tf36);
        field.add(tf37);
        field.add(tf38);
        field.add(tf39);
        field.add(tf40);
        field.add(tf41);
        field.add(tf42);
        field.add(tf43);
        field.add(tf44);
        field.add(tf45);
        field.add(tf46);
        field.add(tf47);
        field.add(tf48);
        field.add(tf49);
        field.add(tf50);
        field.add(tf51);
        field.add(tf52);
        field.add(tf53);
        field.add(tf54);
        field.add(tf55);
        field.add(tf56);
        field.add(tf57);
        field.add(tf58);
        field.add(tf59);
        field.add(tf60);
        field.add(tf61);
        field.add(tf62);
        field.add(tf63);
        field.add(tf64);
        field.add(tf65);
        field.add(tf66);
        field.add(tf67);
        field.add(tf68);
        field.add(tf69);
        field.add(tf70);
        field.add(tf71);
        field.add(tf72);
        field.add(tf73);
        field.add(tf74);
        field.add(tf75);
        field.add(tf76);
        field.add(tf77);
        field.add(tf78);
        field.add(tf79);
        field.add(tf80);
        field.add(tf81);
    }

    public static void main(String[] args) {
        new Sudokuu();
    }
}

让我们首先谈谈如何改进代码。

  1. 不要复制你的代码。 (在这种情况下,使用循环)
  2. 不要把所有东西都放在构造函数中。
  3. 为您的组件(即 JButtons、JPanel 等)提供更容易记住的好名字,而不是单个变量。

信仰解释。

  1. 而不是单独创建、设置边框和将 JTextFields 添加到面板。 在这种情况下是 82 次。 使用for循环。 避免重复代码以保持您的代码干净和更面向对象。

     for (int x=0; x<=82; x++){ JTextField textField = new JTextField("",1); textField.setBorder(new LineBorder(Color.black, 2)); field.add(textField);
  2. 如果要初始化 object 的值,请使用构造函数或阅读文档以获取更多信息。

  3. 将 JButton 命名为“o”、“p”等只会造成混淆。 名称然后更通用,如 oneStep、easy 等。

现在让我们谈谈一些冗余代码。

JPanel p = new JPanel();
p.setBorder(BorderFactory.createLineBorder(Color.cyan));
p.setSize(700,50);
p.setVisible(true);
p.setLayout(new FlowLayout());

无需调用 JPanel 的 setVisible 方法,因为您会将其添加到框架中。 设置 JPanel 的大小有点多余,因为框架的布局管理器可能会忽略它。

import javax.swing.*;
import javax.swing.border.LineBorder;
import java.awt.*;

public class Sudokuu {
    JFrame frame;
    JPanel mainPanel;

    public static void main(String[] args) {
        new Sudokuu().buildGUI();
    }

    private void buildGUI(){
        frame = new JFrame("Sudoku");

        mainPanel = new JPanel();
        mainPanel.setBorder(BorderFactory.createLineBorder(Color.cyan));

        JButton oneStep = new JButton("One Step");
        oneStep.setSize(200,50);

        JButton Easy = new JButton("Easy");
        Easy.setSize(200,50);

        JButton medium = new JButton("Medium");
        medium.setSize(200,50);

        JButton hard = new JButton("Hard");
        hard.setSize(200,50);

        mainPanel.add(oneStep);
        mainPanel.add(Easy);
        mainPanel.add(medium);
        mainPanel.add(hard);

        JPanel field = new JPanel();
        field.setLayout (new GridLayout(9,9));
        frame.add(BorderLayout.NORTH,mainPanel);

        for (int x=0; x<=82; x++){
            JTextField textField = new JTextField("",1);
            textField.setBorder(new LineBorder(Color.black, 2));
            field.add(textField);
        }

        frame.add(BorderLayout.CENTER, field);
        frame.setVisible(true);
        frame.setSize(1920,1000);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}```

此外,首先创建 JTextFields,然后将它们添加到 JPanel。 运行此代码或查看下图是您想要的吗?

输出

编辑:这是第二个问题的答案。


    import javax.swing.*;
    import javax.swing.border.LineBorder;
    import java.awt.*;

public class Sudoku {
    JFrame frame;

    private void buildGUI() {
        frame = new JFrame("Sudoku");

        JPanel buttonpanel = new JPanel();
        buttonpanel.setBorder(BorderFactory.createLineBorder(Color.cyan));
//        buttonpanel.setPreferredSize(new Dimension(500, 50));
//        buttonpanel.setLayout(new BorderLayout());

        JButton one = new JButton("One Step");
        one.setPreferredSize(new Dimension(100, 50));

        JButton easy = new JButton("Easy");
        easy.setPreferredSize(new Dimension(100, 50));

        JButton medium = new JButton("Medium");
        medium.setPreferredSize(new Dimension(100, 50));

        JButton hard = new JButton("Hard");
        hard.setPreferredSize(new Dimension(100, 50));

        buttonpanel.add(one);
        buttonpanel.add(easy);
        buttonpanel.add(medium);
        buttonpanel.add(hard);

        JPanel sudokufield = new JPanel();
        sudokufield.setLayout(new GridLayout(0, 9));
        sudokufield.setPreferredSize(new Dimension(500, 500));

        sudokufield.add(buttonpanel, BorderLayout.PAGE_START);


        for (int x = 0; x <= 80; x++) {
            JTextField textField = new JTextField("", 1);
            textField.setBorder(new LineBorder(Color.black, 2));
            sudokufield.add(textField);
            sudokufield.add(buttonpanel, BorderLayout.CENTER);
        }

        frame.getContentPane().add(BorderLayout.NORTH,buttonpanel);
        frame.getContentPane().add(BorderLayout.CENTER,sudokufield);
        frame.setSize(500,500);
        frame.pack();
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        new Sudoku().buildGUI();
    }
}
  1. 您的 GUI 连接的原因是,您的 frame.pack() 方法在for循环中。
  2. 为什么要将 BorderPanel(JPanel) 的布局设置为 BorderLayout? 删除该行。 让它成为 FlowLayout。
  3. 我建议不要使用那么多 setPrefferedSize() 方法,让框架和 JPanel 的布局管理器来完成工作。

以上代码的输出

f.setVisible(true);

这应该是Sudokuu构造函数中的最后一行。

f.add(p);

这意味着您要将p添加到f的中心。 您在问题中写道p应该出现在数独板上方(这是您代码中的field )。 因此,您应该将以上行更改为:

f.add(p, BorderLayout.PAGE_START);

您还将p添加到field

field.add(p);

您需要删除此行。

field.setLayout(new GridLayout(9, 9));

对于GridLayout你只需要设置一个维度,所以将上面的行替换为:

field.setLayout(new GridLayout(0, 9));

这确保了网格的每一行中最多有九列。

f.setLayout(new BorderLayout());

这不是必需的,因为BorderLayout是默认设置。

field.setVisible(true);

这不是必需的,因为默认情况下visible为 true。

f.add(field, BorderLayout.CENTER);

在将所有组件添加到field之后,将field添加到f

p.setSize(700, 50);

我认为设置首选大小更正确,即

p.setPreferredSize(new Dimension(700, 50));

如上所述,这是我更正后的代码。

import java.awt.*;
import javax.swing.*;
import javax.swing.border.LineBorder;

public class Sudokuu {
    public JFrame f;

    Sudokuu() {
        f = new JFrame("Sudoku");
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JPanel p = new JPanel();
        p.setBorder(BorderFactory.createLineBorder(Color.cyan));
        p.setPreferredSize(new Dimension(700, 50));
        p.setVisible(true);
        p.setLayout(new FlowLayout());
        JButton o = new JButton("One Step");
        o.setPreferredSize(new Dimension(200, 50));
        JButton e = new JButton("Easy");
        e.setPreferredSize(new Dimension(200, 50));
        JButton m = new JButton("Medium");
        m.setPreferredSize(new Dimension(200, 50));
        JButton h = new JButton("Hard");
        h.setPreferredSize(new Dimension(200, 50));
        p.add(o);
        p.add(e);
        p.add(m);
        p.add(h);
        JPanel field = new JPanel();
        field.setLayout(new GridLayout(0, 9));
        field.setPreferredSize(new Dimension(500, 500));
        f.add(p, BorderLayout.PAGE_START);
        JTextField tf = new JTextField("", 1);
        JTextField tf1 = new JTextField("", 1);
        JTextField tf2 = new JTextField("", 1);
        JTextField tf3 = new JTextField("", 1);
        JTextField tf4 = new JTextField("", 1);
        JTextField tf5 = new JTextField("", 1);
        JTextField tf6 = new JTextField("", 1);
        JTextField tf7 = new JTextField("", 1);
        JTextField tf8 = new JTextField("", 1);
        JTextField tf9 = new JTextField("", 1);
        JTextField tf10 = new JTextField("", 1);
        JTextField tf11 = new JTextField("", 1);
        JTextField tf12 = new JTextField("", 1);
        JTextField tf13 = new JTextField("", 1);
        JTextField tf14 = new JTextField("", 1);
        JTextField tf15 = new JTextField("", 1);
        JTextField tf16 = new JTextField("", 1);
        JTextField tf17 = new JTextField("", 1);
        JTextField tf18 = new JTextField("", 1);
        JTextField tf19 = new JTextField("", 1);
        JTextField tf20 = new JTextField("", 1);
        JTextField tf21 = new JTextField("", 1);
        JTextField tf22 = new JTextField("", 1);
        JTextField tf23 = new JTextField("", 1);
        JTextField tf24 = new JTextField("", 1);
        JTextField tf25 = new JTextField("", 1);
        JTextField tf26 = new JTextField("", 1);
        JTextField tf27 = new JTextField("", 1);
        JTextField tf28 = new JTextField("", 1);
        JTextField tf29 = new JTextField("", 1);
        JTextField tf30 = new JTextField("", 1);
        JTextField tf31 = new JTextField("", 1);
        JTextField tf32 = new JTextField("", 1);
        JTextField tf33 = new JTextField("", 1);
        JTextField tf34 = new JTextField("", 1);
        JTextField tf35 = new JTextField("", 1);
        JTextField tf36 = new JTextField("", 1);
        JTextField tf37 = new JTextField("", 1);
        JTextField tf38 = new JTextField("", 1);
        JTextField tf39 = new JTextField("", 1);
        JTextField tf40 = new JTextField("", 1);
        JTextField tf41 = new JTextField("", 1);
        JTextField tf42 = new JTextField("", 1);
        JTextField tf43 = new JTextField("", 1);
        JTextField tf44 = new JTextField("", 1);
        JTextField tf45 = new JTextField("", 1);
        JTextField tf46 = new JTextField("", 1);
        JTextField tf47 = new JTextField("", 1);
        JTextField tf48 = new JTextField("", 1);
        JTextField tf49 = new JTextField("", 1);
        JTextField tf50 = new JTextField("", 1);
        JTextField tf51 = new JTextField("", 1);
        JTextField tf52 = new JTextField("", 1);
        JTextField tf53 = new JTextField("", 1);
        JTextField tf54 = new JTextField("", 1);
        JTextField tf55 = new JTextField("", 1);
        JTextField tf56 = new JTextField("", 1);
        JTextField tf57 = new JTextField("", 1);
        JTextField tf58 = new JTextField("", 1);
        JTextField tf59 = new JTextField("", 1);
        JTextField tf60 = new JTextField("", 1);
        JTextField tf61 = new JTextField("", 1);
        JTextField tf62 = new JTextField("", 1);
        JTextField tf63 = new JTextField("", 1);
        JTextField tf64 = new JTextField("", 1);
        JTextField tf65 = new JTextField("", 1);
        JTextField tf66 = new JTextField("", 1);
        JTextField tf67 = new JTextField("", 1);
        JTextField tf68 = new JTextField("", 1);
        JTextField tf69 = new JTextField("", 1);
        JTextField tf70 = new JTextField("", 1);
        JTextField tf71 = new JTextField("", 1);
        JTextField tf72 = new JTextField("", 1);
        JTextField tf73 = new JTextField("", 1);
        JTextField tf74 = new JTextField("", 1);
        JTextField tf75 = new JTextField("", 1);
        JTextField tf76 = new JTextField("", 1);
        JTextField tf77 = new JTextField("", 1);
        JTextField tf78 = new JTextField("", 1);
        JTextField tf79 = new JTextField("", 1);
        JTextField tf80 = new JTextField("", 1);
        JTextField tf81 = new JTextField("", 1);

        // Setting the Line
        tf.setBorder(new LineBorder(Color.black, 2));
        tf1.setBorder(new LineBorder(Color.black, 2));
        tf2.setBorder(new LineBorder(Color.black, 2));
        tf3.setBorder(new LineBorder(Color.black, 2));
        tf4.setBorder(new LineBorder(Color.black, 2));
        tf5.setBorder(new LineBorder(Color.black, 2));
        tf6.setBorder(new LineBorder(Color.black, 2));
        tf7.setBorder(new LineBorder(Color.black, 2));
        tf8.setBorder(new LineBorder(Color.black, 2));
        tf9.setBorder(new LineBorder(Color.black, 2));
        tf10.setBorder(new LineBorder(Color.black, 2));
        tf11.setBorder(new LineBorder(Color.black, 2));
        tf12.setBorder(new LineBorder(Color.black, 2));
        tf13.setBorder(new LineBorder(Color.black, 2));
        tf14.setBorder(new LineBorder(Color.black, 2));
        tf15.setBorder(new LineBorder(Color.black, 2));
        tf16.setBorder(new LineBorder(Color.black, 2));
        tf17.setBorder(new LineBorder(Color.black, 2));
        tf18.setBorder(new LineBorder(Color.black, 2));
        tf19.setBorder(new LineBorder(Color.black, 2));
        tf20.setBorder(new LineBorder(Color.black, 2));
        tf21.setBorder(new LineBorder(Color.black, 2));
        tf22.setBorder(new LineBorder(Color.black, 2));
        tf23.setBorder(new LineBorder(Color.black, 2));
        tf24.setBorder(new LineBorder(Color.black, 2));
        tf25.setBorder(new LineBorder(Color.black, 2));
        tf26.setBorder(new LineBorder(Color.black, 2));
        tf27.setBorder(new LineBorder(Color.black, 2));
        tf28.setBorder(new LineBorder(Color.black, 2));
        tf29.setBorder(new LineBorder(Color.black, 2));
        tf30.setBorder(new LineBorder(Color.black, 2));
        tf31.setBorder(new LineBorder(Color.black, 2));
        tf32.setBorder(new LineBorder(Color.black, 2));
        tf33.setBorder(new LineBorder(Color.black, 2));
        tf34.setBorder(new LineBorder(Color.black, 2));
        tf35.setBorder(new LineBorder(Color.black, 2));
        tf36.setBorder(new LineBorder(Color.black, 2));
        tf37.setBorder(new LineBorder(Color.black, 2));
        tf38.setBorder(new LineBorder(Color.black, 2));
        tf39.setBorder(new LineBorder(Color.black, 2));
        tf40.setBorder(new LineBorder(Color.black, 2));
        tf41.setBorder(new LineBorder(Color.black, 2));
        tf42.setBorder(new LineBorder(Color.black, 2));
        tf43.setBorder(new LineBorder(Color.black, 2));
        tf44.setBorder(new LineBorder(Color.black, 2));
        tf45.setBorder(new LineBorder(Color.black, 2));
        tf46.setBorder(new LineBorder(Color.black, 2));
        tf47.setBorder(new LineBorder(Color.black, 2));
        tf48.setBorder(new LineBorder(Color.black, 2));
        tf49.setBorder(new LineBorder(Color.black, 2));
        tf50.setBorder(new LineBorder(Color.black, 2));
        tf51.setBorder(new LineBorder(Color.black, 2));
        tf52.setBorder(new LineBorder(Color.black, 2));
        tf53.setBorder(new LineBorder(Color.black, 2));
        tf54.setBorder(new LineBorder(Color.black, 2));
        tf55.setBorder(new LineBorder(Color.black, 2));
        tf56.setBorder(new LineBorder(Color.black, 2));
        tf57.setBorder(new LineBorder(Color.black, 2));
        tf58.setBorder(new LineBorder(Color.black, 2));
        tf59.setBorder(new LineBorder(Color.black, 2));
        tf60.setBorder(new LineBorder(Color.black, 2));
        tf61.setBorder(new LineBorder(Color.black, 2));
        tf62.setBorder(new LineBorder(Color.black, 2));
        tf63.setBorder(new LineBorder(Color.black, 2));
        tf64.setBorder(new LineBorder(Color.black, 2));
        tf65.setBorder(new LineBorder(Color.black, 2));
        tf66.setBorder(new LineBorder(Color.black, 2));
        tf67.setBorder(new LineBorder(Color.black, 2));
        tf68.setBorder(new LineBorder(Color.black, 2));
        tf69.setBorder(new LineBorder(Color.black, 2));
        tf70.setBorder(new LineBorder(Color.black, 2));
        tf71.setBorder(new LineBorder(Color.black, 2));
        tf72.setBorder(new LineBorder(Color.black, 2));
        tf73.setBorder(new LineBorder(Color.black, 2));
        tf74.setBorder(new LineBorder(Color.black, 2));
        tf75.setBorder(new LineBorder(Color.black, 2));
        tf76.setBorder(new LineBorder(Color.black, 2));
        tf77.setBorder(new LineBorder(Color.black, 2));
        tf78.setBorder(new LineBorder(Color.black, 2));
        tf79.setBorder(new LineBorder(Color.black, 2));
        tf80.setBorder(new LineBorder(Color.black, 2));
        tf81.setBorder(new LineBorder(Color.black, 2));

        // adding buttons to the frame
        field.add(tf1);
        field.add(tf2);
        field.add(tf3);
        field.add(tf4);
        field.add(tf5);
        field.add(tf6);
        field.add(tf7);
        field.add(tf8);
        field.add(tf9);
        field.add(tf10);
        field.add(tf11);
        field.add(tf12);
        field.add(tf13);
        field.add(tf14);
        field.add(tf15);
        field.add(tf16);
        field.add(tf17);
        field.add(tf18);
        field.add(tf19);
        field.add(tf20);
        field.add(tf21);
        field.add(tf22);
        field.add(tf23);
        field.add(tf24);
        field.add(tf25);
        field.add(tf26);
        field.add(tf27);
        field.add(tf28);
        field.add(tf29);
        field.add(tf30);
        field.add(tf31);
        field.add(tf32);
        field.add(tf33);
        field.add(tf34);
        field.add(tf35);
        field.add(tf36);
        field.add(tf37);
        field.add(tf38);
        field.add(tf39);
        field.add(tf40);
        field.add(tf41);
        field.add(tf42);
        field.add(tf43);
        field.add(tf44);
        field.add(tf45);
        field.add(tf46);
        field.add(tf47);
        field.add(tf48);
        field.add(tf49);
        field.add(tf50);
        field.add(tf51);
        field.add(tf52);
        field.add(tf53);
        field.add(tf54);
        field.add(tf55);
        field.add(tf56);
        field.add(tf57);
        field.add(tf58);
        field.add(tf59);
        field.add(tf60);
        field.add(tf61);
        field.add(tf62);
        field.add(tf63);
        field.add(tf64);
        field.add(tf65);
        field.add(tf66);
        field.add(tf67);
        field.add(tf68);
        field.add(tf69);
        field.add(tf70);
        field.add(tf71);
        field.add(tf72);
        field.add(tf73);
        field.add(tf74);
        field.add(tf75);
        field.add(tf76);
        field.add(tf77);
        field.add(tf78);
        field.add(tf79);
        field.add(tf80);
        field.add(tf81);
        f.add(field, BorderLayout.CENTER);
        f.pack();
        f.setVisible(true);
    }

    public static void main(String[] args) {
        new Sudokuu();
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM