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

Python014

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

如果是普通切换的话,直接定义一个int值,根据int值的不同 来画不同的东西就可以了\x0d\x0aint index\x0d\x0aswitch(index){\x0d\x0acase 0:\x0d\x0ag.drawImage(a,0,0,20) \x0d\x0abreak\x0d\x0acase 1:\x0d\x0ag,drawImage(b,0,0,20)\x0d\x0abreak\x0d\x0a.................................\x0d\x0a}\x0d\x0a \x0d\x0a如果用渐变效果的话,创建一个数组记录下一张要话的图片的所有RGB值,初始设置所有像素点的透明度为100%,即完全透明,然后一点点的把透明度降低,直到为0,这样就把第二章图片用渐变的方法绘制出来了,这时就可以不用画第一张图片了。

完整代码完全是按你要求写的。\x0d\x0aimport java.awt.Container\x0d\x0aimport java.awt.event.ActionEvent\x0d\x0aimport java.awt.event.ActionListener\x0d\x0aimport javax.swing.JButton\x0d\x0aimport javax.swing.JFrame\x0d\x0aimport javax.swing.JLabel\x0d\x0aimport javax.swing.JPanel\x0d\x0apublic class TESTswing extends JPanel implements ActionListener{\x0d\x0a \x0d\x0a JPanel p1 = new JPanel()\x0d\x0a JPanel p2 = new JPanel()\x0d\x0a JPanel p3 = new JPanel()\x0d\x0a JButton btn1 = new JButton("Button1")\x0d\x0a JButton btn2 = new JButton("Button2")\x0d\x0a public TESTswing()\x0d\x0a {\x0d\x0a p1.add(btn1)\x0d\x0a p1.add(btn2)\x0d\x0a p2.add(new JLabel("I’m is p2"))\x0d\x0a p3.add(new JLabel("I’m is p3"))\x0d\x0a \x0d\x0a p2.setVisible(false)\x0d\x0a p3.setVisible(false)\x0d\x0a this.add(p1)\x0d\x0a this.add(p2)\x0d\x0a this.add(p3)\x0d\x0a btn1.addActionListener(this)\x0d\x0a btn2.addActionListener(this)\x0d\x0a }\x0d\x0a public static void main(String[] args) {\x0d\x0a \x0d\x0a JFrame frame = new JFrame()\x0d\x0a frame.setSize(200, 200)\x0d\x0a \x0d\x0a Container contentPane = frame.getContentPane()\x0d\x0a contentPane.add(new TESTswing())\x0d\x0a frame.show()\x0d\x0a }\x0d\x0a public void actionPerformed(ActionEvent e) {\x0d\x0a // TODO Auto-generated method stub\x0d\x0a String cmd = e.getActionCommand()\x0d\x0a \x0d\x0a if (cmd.equals("Button1"))\x0d\x0a {\x0d\x0a \x0d\x0a p2.setVisible(true)\x0d\x0a p3.setVisible(false)\x0d\x0a \x0d\x0a }\x0d\x0a else\x0d\x0a { \x0d\x0a p2.setVisible(false)\x0d\x0a p3.setVisible(true)\x0d\x0a }\x0d\x0a }

import java.awt.*

public class Frame1 extends Frame{

public Frame1(){

setSize(400,300)

Button bt = new Button("打开")

add(bt)

bt.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

new Frame2().setVisible(true)

}

})

setVisible(true)

}

public void newFrame(){

new Frame2().setVisible(true)

}

class Frame2 extends Frame{

public Frame2(){

this.setSize(400,300)

this.setLocation(300, 300)

}

}

public static void main(String[] args) {

new Frame1()

}

}

重点在于在另外一个方法中重新new一个你想新建的对象,这个方法可以是在主窗体方法中,也可以是在监听器中产生.