【问题标题】:Java rectangle imagesJava 矩形图像
【发布时间】:2012-01-06 22:19:32
【问题描述】:

您好,我对 Java 和编程有点陌生,为了在语言和编程方面都做得更好,我决定制作一个大富翁游戏。

我还应该提到,这是我作为程序员的第一个项目,所以我的做事方式可能是最糟糕的方式。

我正在使用 Swing 库,每个 Rectangle 都是使用图形绘制的

我正在使用矩形构建布局,我想知道是否有办法为每个矩形添加不同的图像?

谢谢

【问题讨论】:

  • 你在使用 Swing 组件吗?需要更多信息才能正确回答此问题。
  • 请张贴(重要部分)您的代码。
  • @user985482:您应该编辑您的问题以提供更多信息。您是否使用 Swing 和布局管理器以某种方式平铺您的矩形?当然可以这样做,但是对于棋盘游戏来说,更典型的做法是为自己构建一个大图像并自己处理该大图像中的元素/精灵/任何内容(在您的情况下,每个单独的“矩形” )。
  • 是的,我正在使用 swing 组件

标签: java swing


【解决方案1】:

使用合适的布局创建您的面板,为方便起见,我建议您使用 带边框的JPanels 而不是绘制矩形。并遵循这些,

 image = ImageIO.read(new File(path));
  JLabel picLabel = new JLabel(new ImageIcon(image));

耶耶!现在您的图像是一个摆动组件!将它添加到框架或面板或您通常做的任何东西!可能也需要重新粉刷,比如

  jpanel.add(picLabel);
  jpanel.repaint(); 

为尽可能多的图片执行此操作 :) 快乐编码...干杯 :)

【讨论】:

    【解决方案2】:

    您似乎正在尝试使用 Swing 布局电路板。如果是这样,您可以简单地设置JLabel 的图像图标。

    JLabel label = new JLabel(new ImageIcon( image ));
    

    但是,我个人会将 Monopoly 板设计为 JPanel,并为其编写自定义绘制方法。在这种情况下,您只需使用Graphics 类的drawImage() 方法即可继续。

    【讨论】:

      【解决方案3】:

      您可能需要做的是将每个矩形创建为JPanel。然后您可以使用GridLayout 创建您的网格,然后设置JPanel 的背景,如here 所示。

      您也可以在每个 JPanel 中放置一个JLabel 并使用setIcon() 方法,如here 所示。

      【讨论】:

        猜你喜欢
        • 2010-12-20
        • 1970-01-01
        • 1970-01-01
        • 2020-01-09
        • 2016-03-30
        • 2017-10-08
        • 1970-01-01
        • 1970-01-01
        • 2014-05-13
        相关资源
        最近更新 更多