private static final long serialVersionUID = 1L
Image imgs[]=new Image[5]
repaint()
改后代码如判乱下:
import java.awt.*
import java.awt.event.*
import java.applet.Applet
public class PlayAudio extends Applet implements ActionListener {
private static final long serialVersionUID = 1L
Image imgs[]=new Image[5]
Button b2
public void init() {
setLayout(new FlowLayout())// 使用布局管理器
imgs[0]=getImage(getCodeBase(),"1.jpg")
imgs[1]=getImage(getCodeBase(),"2.jpg")
imgs[2]=getImage(getCodeBase(),"3.jpg")
imgs[3]=getImage(getCodeBase(),"4.jpg")
imgs[4]=getImage(getCodeBase(),"5.jpg")
b2=new Button("下一张")// 定义Play按钮
b2.addActionListener(this)// 给Play按钮添加一个监听事件
add(b2)
}
private static int count = 0
public void actionPerformed(ActionEvent e)
{
//if(e.getSource() == b2)
//{
count=++count%5
repaint()
//}
}
public void paint(Graphics g)
{
g.drawImage(imgs[count],0,40,this)
}
}
==============================
g.drawImage("m"+count,0,40,this)
这个地方需灶伍要传进image类型的对象:m"+count是字符串隐冲或类型
看了楼上的回复,推荐你一个简单点的方式。解决此类问题。既不让按钮失效,也不放代码逻辑多次排队运行。利禅拆局用锁的概念就可以了。简要代码如御游下:public bool t_status = true
public object t_object = new object()
private void button11_Click(.........)
{
if(t_status)
{
lock(t_object)
{
t_status = false
}
//.....逻辑代码模贺让块
//处理完之后
lock (t_object)
{
t_status = true
}
}
}
以此来确保只有当t_status为true的时候,才会执行以此逻辑代码。其他则不执行。不影响前台代码UI响应。当然用多线程或者其他的解决UI线程 *** 作问题会有更好的效果。望采纳。敲字不易
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)