根据检索到的数据库值创建一组JButton

时间:2015-12-28 09:44:22

标签: java mysql swing

我在一家快餐店的POS系统上工作。我已开发使用MySQL数据库添加,更新和删除产品。现在我需要创建POS GUI(使用SWING),收银员用它来创建账单。我想到的界面就像麦当劳使用的那样,有一组带有产品图像的按钮。 (我已经成功存储了BLOBS产品)

示例图片:

enter image description here

我不知道如何实现这一点,如果可以生成一组动态Jbuttons来获取产品的图像以及名称和价格,那将是非常棒的。这是实现这一目标的最佳方式吗?我该如何实现这一目标?一些细节让我走上正确的道路将非常感激!

感谢。

3 个答案:

答案 0 :(得分:2)

您需要查看GridLayout

在你的情况下,它可能会有点复杂,因为你有多个网格,其中一些看起来互相嵌套。

您应该能够动态分配网格,然后将其留给布局管理器,以便在页面上均匀分布内容。

根据布局的复杂程度,查看JavaFX提供的GridPane可能也是个好主意。

答案 1 :(得分:2)

Top

您至少有四个容器,顶行,底行和每行包含一个单独的容器(对于按钮)。

行的基本布局可能是GridLayout,每行可能会使用BorderLayoutWESTEAST位置的导航按钮。 CENTER容器可以使用GridLayout,但不会给你你想要的外观。您可以使用FlowLayout甚至是GridBagLayout,但您需要确保按钮大小符合您的需求

Middle

在左侧,我看到一个JTable和两个JPanel,其中包含按钮,并与GridBagLayout保持一致。

在右侧,我看到JList。有关详细信息,请参阅How to Use Lists。您可能还想查看Concepts: Editors and RenderersWriting a Custom Cell Renderer,了解有关如何自定义单元格外观的详细信息,以及How to Write a List Selection Listener有关如何确定用户更改的详细信息选择

在一起,它们可能由一个容器中的GridBagLayout维护以便于使用

沿着按钮可能是使用GridBagLayout的另一个容器。

总而言之,他们可能是由GridBagLayout

组成的

有关详细信息,请查看Laying Out Components Within a ContainerHow to Use GridBagLayoutHow to Use BorderLayoutHow to Use FlowLayout

答案 2 :(得分:1)

您好我找到了这个问题,我找到了这个解决方案;

http://www.javasrilankansupport.com/2012/06/create-dynamic-jbutton-with-image-and.html

相关问题