import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.List;
import java.util.ArrayList;public class DongHua extends JApplet //implements ActionListener
{ String names[]={"一","二","三","四","五","六","七","八","九","十"};
Thread t1,t2;
int f=0,j=0;
String st=new String("stop");
List listName=new ArrayList();
String s=new String("");
boolean flag=true;
public void init()
{
for(int i=0;i<names.length;i++)
listName.add(names[i]);
Run r=new Run();
t1=new Thread(r);
t2=new Thread(r); t1.start();
t2.start();
}
public void paint(Graphics g)
{ synchronized(s)
{
g.clearRect(0,0,600,600);
g.setFont(new Font("隶书",Font.BOLD,72));
g.setColor(Color.blue);
if(listName.size()>0)////////
g.drawString((String)listName.get(f),50,50);
f=(f+1)%(listName.size());
}
}
class Run implements Runnable
{
public void run()
{
while(true)
{
try {
Thread.sleep(10);
repaint();
}
catch(Exception e){ }
}
}
}
} 以上程序运行后,在小程序窗口就会不断的滚动显示字"一"到"十"
我想当我在窗口里点击一下,那么就让显示的字停下来(一直到我再次点击时那字才又开始滚动显示)
且停下来后,那么显示的那个字下次就不会再显示有了
如:某时刻我点击了一下,此时窗口显示"三",然后我再点击,则又继续滚动显示字"一"到"十",但此时"三"已不在其中了如果我再点一下又停下来,此时如果显示"六",那么我接着再点击又继续显示,但"三"和"六"又删掉了依此类推,循环点击,直到所有的字删完为止!请高手帮我补充完整!也可另帮写一个完整的程序!
哪个高手先帮我实现,我把100分给他!谢谢!我在线等!
import javax.swing.*;
import java.awt.event.*;
import java.util.List;
import java.util.ArrayList;public class DongHua extends JApplet //implements ActionListener
{ String names[]={"一","二","三","四","五","六","七","八","九","十"};
Thread t1,t2;
int f=0,j=0;
String st=new String("stop");
List listName=new ArrayList();
String s=new String("");
boolean flag=true;
public void init()
{
for(int i=0;i<names.length;i++)
listName.add(names[i]);
Run r=new Run();
t1=new Thread(r);
t2=new Thread(r); t1.start();
t2.start();
}
public void paint(Graphics g)
{ synchronized(s)
{
g.clearRect(0,0,600,600);
g.setFont(new Font("隶书",Font.BOLD,72));
g.setColor(Color.blue);
if(listName.size()>0)////////
g.drawString((String)listName.get(f),50,50);
f=(f+1)%(listName.size());
}
}
class Run implements Runnable
{
public void run()
{
while(true)
{
try {
Thread.sleep(10);
repaint();
}
catch(Exception e){ }
}
}
}
} 以上程序运行后,在小程序窗口就会不断的滚动显示字"一"到"十"
我想当我在窗口里点击一下,那么就让显示的字停下来(一直到我再次点击时那字才又开始滚动显示)
且停下来后,那么显示的那个字下次就不会再显示有了
如:某时刻我点击了一下,此时窗口显示"三",然后我再点击,则又继续滚动显示字"一"到"十",但此时"三"已不在其中了如果我再点一下又停下来,此时如果显示"六",那么我接着再点击又继续显示,但"三"和"六"又删掉了依此类推,循环点击,直到所有的字删完为止!请高手帮我补充完整!也可另帮写一个完整的程序!
哪个高手先帮我实现,我把100分给他!谢谢!我在线等!
import javax.swing.*;
import java.awt.event.*;
import java.util.List;//没必要
import java.util.ArrayList;public class DongHua extends JApplet //implements ActionListener
{ String names[]={"Ò»","¶þ","Èý","ËÄ","Îå","Áù","Æß","°Ë","¾Å","Ê®"};
boolean isrun = true;//判断线程是否在运行.
// Thread t1,t2;//没有必要;
int f=0,j=0;
Run r;//在后面要用到对r的操作
String st=new String("stop");
ArrayList listName=new ArrayList();//相应修改
String s=new String("");
boolean flag=true;
public void init()
{
for(int i=0;i<names.length;i++)
listName.add(names[i]);
r=new Run();//此处相应修改
// t1=new Thread(r);//
// t2=new Thread(r);// // t1.start();//
// t2.start();//
r.start();//修改
//********下面添加鼠标监听
this.addMouseListener(
new MouseAdapter()
{
public void mousePressed(MouseEvent e){
if(isrun&&listName.size()>0){//现在在运行,且listName中还有Item;
if(f==0)
{
f = listName.size();
}
f--;
listName.remove(f);//移除
try{
r.suspend();//线程
isrun = false;
}catch(Exception es)
{
es.printStackTrace();
}
}
else{
try{
r.resume();//恢复
f=0;//设置显示重新开始
isrun = true;
}catch(Exception es)
{
es.printStackTrace();
}
}
// isrun = !isrun;
};
});
}
public void paint(Graphics g)
{ synchronized(s)
{
g.clearRect(0,0,600,600);
g.setFont(new Font("Á¥Êé",Font.BOLD,72));
g.setColor(Color.blue);
if(listName.size()>0)////////
g.drawString((String)listName.get(f),50,50);
f=(f+1)%(listName.size());
}
}
class Run extends Thread//把修改为Thread的子类.
{
public void run()
{
while(true)
{
try {
super.sleep(500);
repaint();
}
catch(Exception e){ }
}
}
}
}
import javax.swing.*;
import java.awt.event.*;
import java.util.List;
import java.util.ArrayList;public class DongHua extends JApplet //implements ActionListener
{ String names[]={"一","二","三","四","五","六","七","八","九","十"};
Thread t1,t2;
int f=0,j=0;
String st=new String("stop");
List listName=new ArrayList();
String s=new String("");
boolean flag=true;
public void init()
{
for(int i=0;i<names.length;i++)
listName.add(names[i]);
Run r=new Run();
t1=new Thread(r);
t2=new Thread(r);
this.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e){
if(listName.size()!=0)
{
if(f==0)
{
listName.remove(f);
return;
}
listName.remove(f-1);
}
}
});
t1.start();
t2.start();
}
public void paint(Graphics g)
{ synchronized(s)
{
g.clearRect(0,0,300,300);
g.setFont(new Font("隶书",Font.BOLD,150));
g.setColor(Color.blue);
if(f==listName.size()) f=listName.size()-1;
g.drawString((String)listName.get(f),50,200);
if(++f==listName.size()) f=0;
}
}class Run implements Runnable
{
public void run()
{
while(true)
{
try {
Thread.sleep(1000);
if(listName.size()>0) repaint();
}
catch(Exception e){ }
}
}
}
}
//<applet code=DongHua.class width=300 height=300></applet>
import javax.swing.*;
import java.awt.event.*;
import java.util.List;
import java.util.ArrayList;public class DongHua extends JApplet //implements ActionListener
{ String names[]={"一","二","三","四","五","六","七","八","九","十"};
Thread t1,t2;
int f=0,j=0;
boolean isstarte=true;
String st=new String("stop");
List listName=new ArrayList();
String s=new String("");
boolean flag=true;
public void init()
{
for(int i=0;i<names.length;i++)
listName.add(names[i]);
Run r=new Run();
t1=new Thread(r);
t2=new Thread(r);
this.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e){
if(listName.size()!=0)
{
isstarte=!isstarte;
if(f==0)
{
listName.remove(f);
return;
}
listName.remove(f-1);
}
}
});
t1.start();
t2.start();
}
public void paint(Graphics g)
{ synchronized(s)
{
g.clearRect(0,0,300,300);
g.setFont(new Font("隶书",Font.BOLD,150));
g.setColor(Color.blue);
if(f==listName.size()) f=listName.size()-1;
g.drawString((String)listName.get(f),50,200);
if(++f==listName.size()) f=0;
}
}class Run implements Runnable
{
public void run()
{
while(true)
{
try {
Thread.sleep(1000);
if(listName.size()>0 && isstarte) repaint();
}
catch(Exception e){ }
}
}
}
}
//<applet code=DongHua.class width=300 height=300></applet>