用Java创建网格

时间:2012-07-03 03:28:09

标签: java swing user-interface jtable jlabel

作为学习Java的一种方式,我正在为小学生编写这个小应用程序来练习基础数学。这个想法是,孩子会遇到任何数学问题,只要他们在应用程序中,就会继续向他们提出问题,直到他们点击“完成”按钮。当他们决定完成时,我想要一个新的JFrame,它会向他们展示他们尝试的所有问题,以及他们的答案,以及他们是否正确或错误地解决了问题。

我正在寻找的建议是我提供这些结果的最佳方式。我查看了GridLayout和GroupLayout,但我不认为这些是完全正确的。我在VBA for Excel中做了类似的事情,在那里我只针对他们尝试的每个问题运行一次for循环。每次迭代都会向框架添加一行标签,并在各种标签中显示问题元素。我在Java中试过这个,但我甚至无法让标签显示出来。

所以在我得到所有特定内容并开始发布我的代码之前,我想问一个更大的问题,即“创建这样的视图的最佳方法是什么?”通常情况下,我会向一个方向走,只是浪费时间才有人提出完全不同(更好)的方法。

谢谢!

(编辑:这是我在Excel中如何做到这一点的图片。我试图在Java中重复基本相同的事情)

enter image description here

2 个答案:

答案 0 :(得分:10)

制作该设计的一种简单方法是使用混合组件。您可以将一堆JLabelJPanel堆叠在垂直FlowLayout中。您描述的网格最好采用JTable设计,如下所示:

example breakdown of components with gaudy colors

答案 1 :(得分:7)

如果您喜欢Excel这样的表格,那么Java会提供JTable类来创建表格,如果您愿意的话。

教程:http://docs.oracle.com/javase/tutorial/uiswing/components/table.html