java - 使用 Swing 的 Java 图形用户界面

标签 java image swing awt

我真的需要一些关于如何用 Java 创建 GUI 的指导。我是一名大学生,这是他们从不关注的事情之一。我目前已经设置并运行了我的程序的其余部分,现在我正在尝试制作 GUI。我正在为此创建一个新的 GUI 类。 (我的印象是这是最好的做法)。我有点了解如何进行基本设置,但我不了解之后如何与 GUI 交互。我想要做的是在启动时创建一个窗口,然后它并排显示两张图片,每张图片下面都有一个标签。我希望图像是可点击的,当点击时,两个新图像被加载到它们的位置(标签被更改为下面)。我没有做过这样的事情,我也遇到过很多不同的方法来添加图像,我想知道是否有最佳实践。

如果需要,我可以提供代码,但我认为提出问题的方式不需要它。

在此先感谢您的所有帮助。

最佳答案

一些建议:

  • 将您的图像放入 ImageIcons。考虑拥有一个 ImageIcons 的 ArrayList。
  • 在 JLabel 中显示您的 ImageIcons。您可以通过调用 setIcon(...) 来更改图标。
  • 在同一个 JLabel 中显示您的文本(或者,如果您愿意,可以在图像 JLabel 下方显示一个不同的 JLabel,这两个 JLabel 均由使用 BorderLayout 的 JPanel 持有)。通过其 setText(...) 方法更改 JLabel 文本。
  • 将 MouseListener 添加到保存图像的 JLabel 并在监听器的 mousePressed 方法中更改 JLabel 的图标。您可以通过 mousePressed MouseEvent 参数的 getSource() 方法获取对单击标签的引用。
  • asgs 评论中提到的教程将帮助您完成所有这些。

编辑 1:

  • 甚至更好——在我的帖子下方的评论中采纳 Puce 的推荐!

关于java - 使用 Swing 的 Java 图形用户界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5837325/

相关文章:

java - getWidth() 对于面板返回 0

java - 从文件中读取并将它们解析为不同的数组

java - Hibernate - ManyToOne 和继承/JOINED/mappedBy

java - 如何从父方法获取注解?

c# - System.Drawing.Image 数据在保存到文件和流之间是不同的

java - JLabel 不动

java - Barebonds Hello World 安全示例

css - 全宽容器中的响应图像

html - 一个非常奇怪的图像/图标文件(单个文件包含具有 3 种不同尺寸的相同图像)

java - JavaFx 中标签上带有 setText 的性能问题