你有一个非常令人困惑的程序结构让你自己变得困难,我建议你简化很多事情.

首先,您当前的MinesweeperMenu类不需要扩展MinesweeperPanel,后者类也不需要扩展JFrame.然后你在其他地方有一个静态JFrame – 这是太多的JFrame,并且要启动,你试图在一个JFrame中显示你的图像,但是显示另一个没有图片的那个.你的程序只需要一个JFrame,它应该可以创建,填充其内容,打包并显示在一个地方,而不是像你一样在这里散落.

你试图在paintComponent覆盖中显示图片,但是这个方法永远不会被调用,因为你的类扩展了JFrame(最终)并且JFrame没有这个方法.你正在使用正确的方法,但是类应该扩展JPanel,你应该在paintComponent方法块上面有一个@Override注释,以确保你实际上覆盖了父方法.

你应该摆脱这个程序中所有静态的东西.这里唯一静态的应该是main方法,也许是一些常量,但就是这样.

这里有更多的错误,我没有多少时间来讨论所有这些错误.考虑从头开始,从小开始,使小位工作,然后将它们加在一起.

例如,首先创建一个非常小的程序,尝试将图像读入Image对象,将其放在ImageIcon中,将ImageIcon放入JLabel,并在JOptionPane中显示JLabel,这很简单,只是为了看看你是否可以读取图像确定,例如,这样的事情:

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

import javax.imageio.ImageIO;

import javax.swing.ImageIcon;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

public class TestImages {

// *** your image path will be different *****

private static final String IMG_PATH = "src/images/image01.jpg";

public static void main(String[] args) {

try {

BufferedImage img = ImageIO.read(new File(IMG_PATH));

ImageIcon icon = new ImageIcon(img);

JLabel label = new JLabel(icon);

JOptionPane.showMessageDialog(null, label);

} catch (IOException e) {

e.printStackTrace();

}

}

}

然后,当您完成此操作时,查看您是否现在可以创建一个在其paintComponent方法中显示相同Image的JPanel,并在JOptionPane中显示此JPanel.

然后创建一个JFrame并在JFrame中显示保存图像的JPanel.

通过连续迭代,您将测试概念,纠正错误并构建程序.

java swing 图片显示_在Java Swing中显示图像相关推荐

  1. java改变图片颜色_使用java代码实现证件照换背景色

    思路:我们知道,每张图片都是由众多的像素点组成,那么我们是不是就可以根据像素点的范围来修改这个图片的像素点的颜色,进而就可以达到修改证件照背景颜色的效果啦!我们可以配合取色器获取颜色的rgb,并修改为 ...

  2. java web图片旋转_修正web项目中图片旋转方向

    # 使用 imagemagick 旋转 查看照片 EXIF 信息,Exif 中的图片旋转信息储存在``Orientation``中. ``` identify -verbose xxx.jpg ``` ...

  3. java实现图片切割_【Java】K-means算法Java实现以及图像切割

    1.K-means算法简述以及代码原型 总的来讲,k-means聚类须要下面几个步骤: ①.初始化数据 ②.计算初始的中心点,能够随机选择 ③.计算每一个点到每一个聚类中心的距离.而且划分到距离最短的 ...

  4. java项目----教务管理系统_基于Java的教务管理系统

    java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...

  5. 表格在整个html居中显示,html 表格字符居中显示_如何在HTML中居中显示表格?

    html 表格字符居中显示_如何在HTML中居中显示表格? html 表格字符居中显示_如何在HTML中居中显示表格? html 表格字符居中显示 HTML table provides the ab ...

  6. 用java画爱心图_用java实现 图片组成心形图案

    灵感:java2核心技术卷1(共两卷) 最近在看java2核心技术里面提到显示图片,于是就做了个心形图片组合图案...你懂得 import java.awt.*; import java.awt.ge ...

  7. java开发 图片显示不出来_java web开发中 显示图片的问题

    记录一个java Web开发中显示图片的小问题: 我碰到的问题是:把服务器上存的图片,在客户端的浏览器中显示出来.解决方法如下: 两种显示方式 一是:在servlet 或 action中直接输入图片到 ...

  8. java工作台无法显示_【Eclipse】使用指南(18)搜索工作台

    Searching the workbench 搜索工作台 In this section, you will search the workbench for Java elements. 本小节, ...

  9. java图片管理系统_基于Java的图片管理信息系统的设计与实现

    收稿日期:2003 - 05 - 07 作者简介:谭 娜(1978 -) ,女 ,河南济源人 ,硕士研究生 ,主要研究方向为数据库理论与应用. 基于 Java 的图片管理信息系统的设计与实现 谭 娜1 ...

最新文章

  1. 计算机语言学习app,学习之编程语言
  2. 忘掉 Java 并发,先听完这个故事。。。
  3. mds聚类matlab,MDS图示聚类结果
  4. isdigit函数python检测数字个数_Python中判断字符串是否为数字的三个方法isdecimal 、isdigit、isnumeric的差别...
  5. C/C++ ini配置文件的格式及如何读写ini配置文件
  6. 如何修改WAMP中mysql默认空密码重新登录phpmyadmin
  7. Beta Daily Scrum 第五天
  8. 手机号码归属地查询接口大全
  9. win10 2016 LTSB
  10. 计算机的外围设备找不到,bluetooth外围设备,教您bluetooth外围设备找不到驱动程序怎么解决...
  11. 互联网大数据时代下亚马逊是如何解决数据存储的
  12. 今天,魅族发布了一款AirPods!
  13. 前端三件套之JS速成
  14. MySQL默认字符集设置
  15. python最简单的爬取邮箱地址_python爬取邮箱的实例代码
  16. 使用百度云主机的GPU主机教程_第二部分
  17. 阴影检测(shadow detect)
  18. Red Hat Enterprise Linux 8.8 正式版
  19. 数据库之mysql事务原理分析与锁机制 详解
  20. 【testNG】执行多个suit

热门文章

  1. 路由守卫 /路由拦截
  2. 论文排版笔记1 mathtype
  3. 终于有人总结了图神经网络!
  4. HTML页面点击下载保存文件
  5. 7zip自带hash校验功能
  6. Matlab绘制带有填充区域的曲线
  7. php sns,PHP开源项目:小众SNS社区 PHPizabi
  8. cad画流程图的插件_在cad中画流程图的方法图解步骤
  9. java-core-basic
  10. 舞动的表情包——浅析 GIF 格式图片的存储和压缩