博北A209 2015-05-08 03:25 采纳率: 0%
浏览 3016

JPane显示多张图片设置滚动条,图片只能显示一部分,代码如下:


package com.jiqixuexi.paper.main;

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.io.File;

import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;

public class Test extends JFrame{

    MyPanel mp=null;
    public Test(){
        mp=new MyPanel();
        this.add(mp);
        this.setSize(550, 400);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
    }

    public static void main(String[] args){
        new Test();
    }
}

class MyPanel extends JPanel{//我的图片是50*50的共500张
    Image image=null;
    public void paint(Graphics g){   //将图片显示出来 ,
        int j=1;                     //用来控制图片显示的横向位置
        int h=0;                     //用来控制图片显示的纵向位置
        for (int i = 1; i <= 500; i++) {  //设计for循环来设置每张图片对应的显示位置   
            if(j==11)
            {
                h++;
                j=1;
            }
            try {
                image=ImageIO.read(new File("D:\\matlab\\return\\"+i+".png"));  
                //以原来图片大小显示在面板上用(j-1)*51和h*51改变每张的显示位置      
                g.drawImage(image,(j-1)*51,h*51,this);  
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            j++;
        }
    }
}

  • 写回答

1条回答 默认 最新

  • 博北A209 2015-05-08 15:48
    关注

    为什么没有人回答???

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog