【问题标题】:Displaying an image on a JtextArea within a JPanel在 JPanel 内的 JtextArea 上显示图像
【发布时间】:2011-08-17 12:06:33
【问题描述】:

不知道为什么这不起作用我正在使用 netbeans 创建它我在 jcreator 中有类似的代码并且它可以工作。非常感谢任何帮助

    public void BoardGUI(){
         panel = new JPanel();
         setIconImage(new ImageIcon("images/die.bmp").getImage());

         Container cPane;
         cPane = getContentPane();
         cPane.setBackground(Color.red);

         setTitle("ITT Game Of Life");
         setDefaultCloseOperation(EXIT_ON_CLOSE);

         panel.setOpaque(false);                         //the frame
         setSize(800,650);
         setLocation(500,100);
         boardArea = new JTextArea(50,100)  {

         ImageIcon image = new ImageIcon( "/images/Board.jpg" );

     @Override
     public void paint( Graphics g ) {
        g.drawImage( image.getImage(), 0, 0, this);
        super.paint(g);
     }
   };

   boardArea.setOpaque(false);
   boardArea.setEditable(true);
   boardArea.setBounds(100,50,200,200);
   cPane.add(boardArea);

【问题讨论】:

  • 你有什么错误吗?究竟是什么行不通?当我尝试它时,我可以看到图像作为文本区域的背景。
  • 没有错误出现,只是当我运行它时,我根本没有让图像出现。我应该将图像放在类中还是在项目中其他位置的文件夹中。

标签: java image swing


【解决方案1】:
setIconImage(new ImageIcon("images/die.bmp").getImage()); 

ImageIcon image = new ImageIcon( "/images/Board.jpg" ); 

您使用了 2 种不同的方式来指定图像的位置。我猜第一个是正确的。你的框架图标变了吗?

另外,How to Use Icons 教程通过图像作为资源提供了更好的示例。

【讨论】:

  • 我有。谢谢它在netbeans中的实际位置是问题所在。我已经移动了文件并给出了它的完整位置,所以现在很好。感谢您的帮助
【解决方案2】:

尝试更改 netbeans 的图像文件夹的位置。我曾经在学生生活中使用过netbeans。我记得的事情,可能是图像的相对路径问题。

这可能是不能仅使用 netbeans 的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-05
    • 2010-11-17
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-02
    相关资源
    最近更新 更多