Движение текста без использования потоков - Applet - Java

Узнай цену своей работы

Формулировка задачи:

Здраствуйте,хочу чтобы текст без использовние потоков двигался.У меня вроде получилось.Но как сделать чтобы текст пропадал ,а то он накладываеться один на другой.
Листинг программы
  1. public class JavaApplet extends Applet implements MouseListener{
  2. String msg=new String("first");
  3. int x=0;
  4. int y=20;
  5. int clickCounter=0;//we will increment this shit when user will do double click
  6. void setString()
  7. {
  8. if(this.clickCounter%2==0)
  9. {
  10. this.msg="first";
  11. }
  12. else
  13. {
  14. this.msg="second";
  15. }
  16. }
  17. public void init() {
  18. setBackground(Color.yellow);
  19. setForeground(Color.black);
  20. addMouseListener( this );//
  21. }
  22. public void start(){
  23. }
  24. public void paint(Graphics g){
  25. while(true){
  26. try {
  27. Thread.sleep(1000);
  28. update( g );
  29. }
  30. catch (InterruptedException e) {
  31. // TODO Auto-generated catch block
  32. e.printStackTrace();
  33. }
  34. setForeground(Color.yellow);
  35. }}
  36. public void mouseClicked( MouseEvent e )
  37. { this.clickCounter++;
  38. this.setString();
  39. setForeground(Color.yellow);
  40. repaint();
  41. e.consume();
  42. }
  43. public void update( Graphics g ) {
  44. x +=10;
  45. g.drawString(msg,x,y);
  46. }
  47. @Override
  48. public void mouseEntered(MouseEvent e) {
  49. // TODO Auto-generated method stub
  50. }
  51. @Override
  52. public void mouseExited(MouseEvent e) {
  53. // TODO Auto-generated method stub
  54. }
  55. @Override
  56. public void mousePressed(MouseEvent e) {
  57. // TODO Auto-generated method stub
  58. }
  59. @Override
  60. public void mouseReleased(MouseEvent e) {
  61. // TODO Auto-generated method stub
  62. }
  63. }

Решение задачи: «Движение текста без использования потоков - Applet»

textual
Листинг программы
  1.    public void paint(Graphics g) {
  2.       while (true) {
  3.          try {
  4.             Thread.sleep(1000);
  5.             g.clearRect(0, 0, this.getWidth(), this.getHeight());
  6.             update(g);
  7.          } catch (InterruptedException e) {
  8.             e.printStackTrace();
  9.          }
  10.       }
  11.    }
  12.  
  13.    public void update(Graphics g) {
  14.       x += 10;
  15.       if (x > this.getWidth()) {
  16.          x = 0;
  17.       }
  18.       g.drawString(msg, x, y);
  19.    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.214 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут