我正在尝试制作一个由9×9 JButton制作的简单的tic tac toe board.

我使用了二维数组和一个gridlayout,但结果是什么,没有任何按钮的框架.

我做错了什么?

import java.awt.GridLayout;

import javax.swing.*;

public class Main extends JFrame

{

private JPanel panel;

private JButton[][]buttons;

private final int SIZE = 9;

private GridLayout experimentLayout;

public Main()

{

super("Tic Tac Toe");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setSize(500,500);

setResizable(false);

setLocationRelativeTo(null);

experimentLayout = new GridLayout(SIZE,SIZE);

panel = new JPanel();

panel.setLayout(experimentLayout);

buttons = new JButton[SIZE][SIZE];

addButtons();

add(panel);

setVisible(true);

}

public void addButtons()

{

for(int k=0;k

for(int j=0;j

{

buttons[k][j] = new JButton(k+1+", "+(j+1));

experimentLayout.addLayoutComponent("testName", buttons[k][j]);

}

}

public static void main(String[] args)

{

new Main();

}

}

addButton方法是将按钮添加到数组中,然后直接添加到面板中.

gridlayout用法 java_java – 使用gridlayout添加按钮相关推荐

  1. gridlayout用法 java_Java从入门到精通14-GridLayout网格布局

    网格布局特点: 使容器中的各组件呈M行×N列的网格状分布. 网格每列宽度相同,等于容器的宽度除以网格的列数. 网格每行高度相同,等于容器的高度除以网格的行数. 各组件的排列方式为:从上到下,从左到右. ...

  2. gridlayout用法 java_BorderLayout、FlowLayout和GridLayout使用方法

    BorderLayout BorderLayout(边界布局管理器)是一种较为复杂的布局方式,它将容器划分为五个区域,分别是页头(PAGE_START).页尾(PAGE_END).行首(LINE_ST ...

  3. jquery用添加按钮把数据传送给PHP页面

    先建一个HTML文件,命名为add.html <html xmlns="http://www.w3.org/1999/xhtml"> <head> < ...

  4. iOS 11开发教程(十八)iOS11应用视图之使用代码添加按钮

    iOS 11开发教程(十八)iOS11应用视图之使用代码添加按钮 由于使用编辑界面添加视图的方式比较简单,所以不在介绍.这里,直接讲解代码中如何添加.使用代码为主视图添加一个按钮的方式和在1.3.3节 ...

  5. iOS 9应用开发教程之使用代码添加按钮美化按钮

    iOS 9应用开发教程之使用代码添加按钮美化按钮 丰富的用户界面 在iOS9中提供了很多的控件以及视图来丰富用户界面,对于这些视图以及控件我们在上一章中做了简单的介绍.本章我们将详细讲解这些视图. i ...

  6. pyqt5动态添加按钮

    QMainWindow动态添加按钮,添加后需要调用show(),才可以显示出来. self.start_file_aaa = QPushButton(self) self.start_file_aaa ...

  7. 在使用添加按钮给table插入新的一行时遇见的问题总结及处理方法

    添加按钮的功能:点击添加按钮之后完成添加新的一行. 遇见的问题:当多次点击添加按钮生成新的多行之后,生成的每行内部按钮的保存按钮点击事件出现最晚添加的一行的行内保存点击事件执行一次,倒数第二次添加的行 ...

  8. 在GridView中添加按钮后,如何触发按钮的各种事件?

    //在GridView中添加按钮后,如何触发按钮的各种事件? 1.在GridView的"编辑列"属性窗口中,增加新的Botton列. 2.然后再该窗口右边属性中,将外观项下的But ...

  9. DEV—【GridControl添加按钮列】

    DEV-[GridControl添加按钮列] 效果图 打开GridControl的Run Designer在左侧栏中找到: 添加一个ButtonEdit: 更改属性中的值:Caption为按钮上显示的 ...

最新文章

  1. 【剑指offer】14、剪绳子
  2. 2013版计算机应用基础,《计算机应用基础》实施细则(2013版)
  3. css3动画之——动态的省略号
  4. 用按钮控制歌单的上一曲和下一曲 0130 winform
  5. down.php怎么安装,Markdown、phpstudy的安装及配置
  6. 防火墙之iptables
  7. 网页隐藏index.php,如何隐藏url中的index.php
  8. 使用MySQLWorkBench绘制ER图详解
  9. iOS申请证书,Certificates, Identifiers Profiles 简介
  10. boost.asio网络错误码
  11. root高级权限怎么弄,怎样拥有root权限
  12. 【前端前沿看点】React和Vue深度对比
  13. Hibernate tools的hbm2ddl和hbm2java
  14. 类的成员函数指针和静态成员函数指针 调用成员函数***
  15. 弘辽科技:“拼夕夕”华丽变装为“拼爹爹”的成功秘诀
  16. php中ts和nts版本,PHP中ts和nts版本 - vc6和vc9编译版本的区别
  17. servlet生命周期(很有用)
  18. 现代软件工程 第一周博客记录
  19. 快速查询宅急送单号物流信息的方法
  20. 如何彻底让电脑连不上网

热门文章

  1. 【Android】关于D8/R8那些事:Desugaring脱糖、APK包体积优化等
  2. 使用SSH客户端远程登录Linux主机(可替代samba、ftp服务)
  3. 学了4年C++后,我转向了Python
  4. Typescript笔记-总
  5. 【校招VIP】产品文案策划之文学常识
  6. mysql表的组成_数据库中的数据表由什么组成?
  7. java实现简单的网络象棋游戏
  8. pytorch中的gather函数_理解pytorch几个高级选择函数(如gather)
  9. AAC音频格式ADTS头详解
  10. 季节轮换,总有新的故事值得期待——社科院与杜兰大学金融管理硕士项目