Java GUI:我似乎无法在不弄乱GridLayout的情况下添加JLabel?

提姆

我正在尝试使用gridlayout格式化Java GUI,但是我不确定从哪里开始对其进行格式化。我没有足够的声誉提供图片,但我希望GUI在左侧显示8x8网格,在右侧显示一些JLabel。我将如何去做?

import javax.swing.JFrame; 
import javax.swing.JButton; 
import java.awt.GridLayout; 
import java.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import java.util.logging.*;

import javax.*;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import javax.imageio.*;

public class ButtonGrid {

    JFrame frame=new JFrame(); //creates frame
    JButton[][] grid; //names the grid of buttons
    JLabel message;

    public ButtonGrid(int width, int length){ 
            frame.setLayout(new GridLayout(width,length)); //set layout
            grid=new JButton[width][length]; //size of grid
            int square =0;
            for(int y=0; y<length; y++){
                    for(int x=0; x<width; x++){
                            String squareString = String.valueOf(square);
                            grid[x][y]=new JButton(squareString); //makes newbutton   
                            frame.add(grid[x][y]); //adds button to grid
                            square++;
                    }
            }

            message = new JLabel("program is messing up");
            frame.add(message);
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.pack(); //sets appropriate size for frame
            frame.setVisible(true); //makes frame visible
    }
    public static void main(String[] args) {
            new ButtonGrid(8,8);//makes new ButtonGrid with 2 parameters
    }
}

因此,你们能提供的任何帮助将不胜感激。

迪伦·盖蒂(Dylan Gattey)

GridLayout众所周知,它对想要空间的东西不利。最好的选择是GridBagLayout(但是对于像这样的简单东西来说太复杂了),或者将视图嵌套在其他框架中。您可以像现在一样将所有这些按钮放在一个框架上(称为frameAGridLayout,然后添加frameAframeB(父框架)。您可以添加到JLabelframeB并确保它不会弄乱按钮。您可以根据需要使用简单的BorderLayoutforframeB或grid或任何其他布局。就个人而言,我认为将事物嵌套在更多帧中要容易得多,因为它使布局简单得多。希望能有所帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我的Java程序如何在不每次都建立连接的情况下连续使用MATLAB?

来自分类Dev

我如何在不导入任何Java库的情况下使直方图更具OOPy?

来自分类Dev

如何在不覆盖Java的情况下写入文件?

来自分类Dev

在不编译 Java 的情况下从 Gradle 执行 Groovy 脚本

来自分类Dev

在不改变java对象的情况下动态添加属性

来自分类Dev

是否可以在不编辑java.policy文件的情况下运行Java Applet?

来自分类Dev

我的程序在某些情况下似乎无法分隔单词

来自分类Dev

无法在不弄乱数组的情况下从数组中删除对象

来自分类Dev

如何在不使用Java创建新实例的情况下引用GUI?

来自分类Dev

在不更改其他人的类的情况下,如何要求它使用我的Scanner版本(作为内部类掩埋)而不是java.util.Scanner?

来自分类Dev

Java GUI JLabel

来自分类Dev

java:Swith情况下的NullPointerAccess(NullPointerException)

来自分类Dev

默认情况下是否安装Java?

来自分类Dev

Java Selenium:如何在不首先加载页面的情况下获取网页的HTML?

来自分类Dev

如何在不初始化Java中for循环的情况下重用变量?

来自分类Dev

如何在不损坏文件的情况下用Java将InputStream转换为PDF?

来自分类Dev

可以在不声明值volatile的情况下实现java原子整数?

来自分类Dev

如何在不链接回调用源的情况下跳到Java中的方法?

来自分类Dev

Java:在不导致程序再次运行的情况下最小化Jframe窗口

来自分类Dev

在Java中如何在不返回实例或数据副本的情况下获得对属性的访问?

来自分类Dev

如何在不指定类的情况下使用显式类型参数调用Java方法?

来自分类Dev

如何在不丢失Java单词的情况下拆分字符串?

来自分类Dev

是否可以在不暂停主要进程的情况下从Java以交互模式运行bash?

来自分类Dev

在不更改代码的情况下中断在Java进程中运行的挂起线程的命令

来自分类Dev

如何在不写入磁盘的情况下解析zip中的文件-Java

来自分类Dev

Java在不暂停当前线程的情况下启动while循环

来自分类Dev

如何在不指定共享类型的情况下使用Box Java SDK创建共享链接?

来自分类Dev

如何在不结束循环的情况下停止Java扫描程序

来自分类Dev

Java swing:在不创建新矩形的情况下修改矩形

Related 相关文章

  1. 1

    我的Java程序如何在不每次都建立连接的情况下连续使用MATLAB?

  2. 2

    我如何在不导入任何Java库的情况下使直方图更具OOPy?

  3. 3

    如何在不覆盖Java的情况下写入文件?

  4. 4

    在不编译 Java 的情况下从 Gradle 执行 Groovy 脚本

  5. 5

    在不改变java对象的情况下动态添加属性

  6. 6

    是否可以在不编辑java.policy文件的情况下运行Java Applet?

  7. 7

    我的程序在某些情况下似乎无法分隔单词

  8. 8

    无法在不弄乱数组的情况下从数组中删除对象

  9. 9

    如何在不使用Java创建新实例的情况下引用GUI?

  10. 10

    在不更改其他人的类的情况下,如何要求它使用我的Scanner版本(作为内部类掩埋)而不是java.util.Scanner?

  11. 11

    Java GUI JLabel

  12. 12

    java:Swith情况下的NullPointerAccess(NullPointerException)

  13. 13

    默认情况下是否安装Java?

  14. 14

    Java Selenium:如何在不首先加载页面的情况下获取网页的HTML?

  15. 15

    如何在不初始化Java中for循环的情况下重用变量?

  16. 16

    如何在不损坏文件的情况下用Java将InputStream转换为PDF?

  17. 17

    可以在不声明值volatile的情况下实现java原子整数?

  18. 18

    如何在不链接回调用源的情况下跳到Java中的方法?

  19. 19

    Java:在不导致程序再次运行的情况下最小化Jframe窗口

  20. 20

    在Java中如何在不返回实例或数据副本的情况下获得对属性的访问?

  21. 21

    如何在不指定类的情况下使用显式类型参数调用Java方法?

  22. 22

    如何在不丢失Java单词的情况下拆分字符串?

  23. 23

    是否可以在不暂停主要进程的情况下从Java以交互模式运行bash?

  24. 24

    在不更改代码的情况下中断在Java进程中运行的挂起线程的命令

  25. 25

    如何在不写入磁盘的情况下解析zip中的文件-Java

  26. 26

    Java在不暂停当前线程的情况下启动while循环

  27. 27

    如何在不指定共享类型的情况下使用Box Java SDK创建共享链接?

  28. 28

    如何在不结束循环的情况下停止Java扫描程序

  29. 29

    Java swing:在不创建新矩形的情况下修改矩形

热门标签

归档