在一个界面中要实现图片切换,用java要怎么实现??

 我来答
惠企百科
2022-12-02 · 百度认证:北京惠企网络技术有限公司官方账号
惠企百科
惠企百科网是一家科普类综合网站,关注热门中文知识,集聚互联网精华中文知识,本着自由开放、分享价值的基本原则,向广大网友提供专业的中文知识平台。
向TA提问
展开全部
如果是普通切换的话,直接定义一个int值,根据int值的不同 来画不同的东西就可以了\x0d\x0aint index;\x0d\x0aswitch(index){\x0d\x0a case 0:\x0d\x0a g.drawImage(a,0,0,20); \x0d\x0a break;\x0d\x0a case 1:\x0d\x0a g,drawImage(b,0,0,20);\x0d\x0a break;\x0d\x0a .................................\x0d\x0a}\x0d\x0a \x0d\x0a如果用渐变效果的话,创建一个数组记录下一张要话的图片的所有RGB值,初始设置所有像素点的透明度为100%,即完全透明,然后一点点的把透明度降低,直到为0,这样就把第二章图片用渐变的方法绘制出来了,这时就可以不用画第一张图片了。
419460185ws
推荐于2018-12-27 · 超过25用户采纳过TA的回答
知道答主
回答量:85
采纳率:33%
帮助的人:25.5万
展开全部
如果是普通切换的话,直接定义一个int值,根据int值的不同 来画不同的东西就可以了
int index;
switch(index){
case 0:
g.drawImage(a,0,0,20);
break;
case 1:
g,drawImage(b,0,0,20);
break;
.................................
}

如果用渐变效果的话,创建一个数组记录下一张要话的图片的所有RGB值,初始设置所有像素点的透明度为100%,即完全透明,然后一点点的把透明度降低,直到为0,这样就把第二章图片用渐变的方法绘制出来了,这时就可以不用画第一张图片了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
198901245631
推荐于2017-10-12 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1735万
展开全部
通常可以设置某个固定的切换时间,之后显示固定的或者是随机的显示某张图片,举例:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MousDemo extends JFrame {
MyJPanel mp;
int index;
ImageIcon[] imgs = { new ImageIcon("C:\\Users\\lenovo\\Desktop\\a.png"),
new ImageIcon("C:\\Users\\lenovo\\Desktop\\b.png") };

public MousDemo() {
mp = new MyJPanel(false);

this.add(mp);
this.setSize(300, 200);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setTitle("鼠标窗口");
this.setVisible(true);

/**
* 方式一,使用TImer来切换图片
* Swing下的Timer组件,个人觉得非常适合
* Timer(200,new ActionListener());意思就是每200毫秒执行一次ActionListener里面的方法
* */
Timer timer = new Timer(200,new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
mp.flag = !mp.flag;
mp.repaint();
}
});
timer.start();
}

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

class MyJPanel extends JPanel{
boolean flag;
public MyJPanel(boolean flag) {
this.flag = flag;
}
@Override
public void paint(Graphics g) {
super.paint(g);
if(flag == false){
g.drawImage(imgs[0].getImage(), 0, 0,this);
}else{
g.drawImage(imgs[1].getImage(), 0, 0,this);
}
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hanwei_0311
2012-11-05 · TA获得超过292个赞
知道小有建树答主
回答量:178
采纳率:100%
帮助的人:134万
展开全部
package com.han.test;
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Test extends JFrame{
private JLabel label = null;
private JButton button = null;
//图片的位置,如果图片在工程的根目录下,可以直接使用图片名如:private String img3 = "1.JPG";
private String img1 = "d://1.JPG";
private String img2 = "d://2.JPG";
private int i=0;
public Test(){
setSize(500,500);
setLocation(100,50);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setContentPane(getPanel());
setVisible(true);
}
private Container getPanel() {
JPanel panel = new JPanel();
panel.setLayout(null);
label = new JLabel("55555");
//label 设置一张图片,
label.setIcon(new ImageIcon(img1));
button = new JButton("换一张");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//label 换一个图片
if(i%2==0){
label.setIcon(new ImageIcon(img2));
}else{
label.setIcon(new ImageIcon(img1));
}
i++;
}
});
label.setBounds(60, 10, 200, 200);
button.setBounds(60, 300, 80,40);
panel.add(label);
panel.add(button);
return panel;
}
public static void main(String[] args) {
new Test();
}
}

最简单的切换,做了点处理,再两图片间切换
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pieryon
推荐于2017-10-05 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14410 获赞数:166869
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部
图片切换的基本原理,就是图片放在一个list中,循环10s换一次就可以了
你是用java swing还是jsp页面?
Swing的实现如下:
image = new ImageIcon(imageList[1]);
label.setIcon(image);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式