Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Swing自定义GUI组件_Java_Swing_User Interface - Fatal编程技术网

Java Swing自定义GUI组件

Java Swing自定义GUI组件,java,swing,user-interface,Java,Swing,User Interface,我需要创建一个自定义GUI组件,如下图所示。 上面有一些按钮和标签 我怎么能这样创造呢 您可以使用一个JWindow,以图像作为背景图片。对于按钮,请使用带有图像图标的JButton。您可以使用带有nullLayout的JFrame,然后使用带有图像的JLabel 现在,对于按钮,使用setContentAreaFilled(false)和setOrderPaint(false)删除默认按钮样式,它将与创建按钮时传递的图像完全相同 要将机架定位在中心位置,请使用setLocationRelati

我需要创建一个自定义GUI组件,如下图所示。 上面有一些按钮和标签

我怎么能这样创造呢


您可以使用一个JWindow,以图像作为背景图片。对于按钮,请使用带有图像图标的JButton。

您可以使用带有nullLayout的JFrame,然后使用带有图像的JLabel

现在,对于按钮,使用setContentAreaFilled(false)和setOrderPaint(false)删除默认按钮样式,它将与创建按钮时传递的图像完全相同

要将机架定位在中心位置,请使用setLocationRelativeTo(null)


我认为这应该可以解决您的问题。

不同意使用空布局的建议。我建议OP使用嵌套布局的组合,让图像和首选组件大小帮助经理找到最佳布局。只是强调@Hovercraft:noooo!空布局是swing中的一个禁忌。感谢您的评论:)我仍然是java的初学者,学习的东西:)将记住您的建议。你能告诉我为什么不使用空布局吗?有几个原因,但有一个原因是,在不同的平台上,甚至在不同的分辨率上,你的GUI外观可能非常糟糕,无法正常工作。另一方面,这使得升级GUI非常困难,例如如果您希望添加另一个按钮。