永发信息网

java中怎样设置一个移动的面板?

答案:1  悬赏:10  手机版
解决时间 2021-01-03 10:32
以下是课本中的例题,设置了一条移动的信息,那么,怎么把message换成panel?我想要让很多东西一起移动,所以需要让整个面板移动。

import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;

public class AnimationDemo extends JFrame {
public AnimationDemo() {
add(new MovingMessagePanel("message moving?"));
}

public static void main(String[] args) {
AnimationDemo frame = new AnimationDemo();
frame.setTitle("AnimationDemo");
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(280, 100);
frame.setVisible(true);
}

static class MovingMessagePanel extends JPanel {
private String message = "Welcome to Java";
private int xCoordinate = 0;
private int yCoordinate = 20;

public MovingMessagePanel(String massage) {
this.message = message;

Timer timer = new Timer(50, new TimerListener());
timer.start();
}

public void paintComponent(Graphics g) {
super.paintComponent(g);

if (xCoordinate > getWidth()) {
xCoordinate = -20;
}
xCoordinate +=5;
g.drawString(message, xCoordinate, yCoordinate);
}

class TimerListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
repaint();
}
}
}
}
最佳答案
组件在面板中移动还是面板在显示器上移动呢??
不管怎样都可以用setLocaltion()方法设置组建的坐标
如果是重写组建的paint()方法可以使用Graphics 中相关的绘图方法
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
读中心点为地球北极的示意图,若阴影部分表示
VB提起TXT指定符号后的内容
爱乐维可以空腹吃吗什么时候吃最佳
梦幻西游神器任务在魔王居里飞出来怎么进
黄金用英语怎么说
在“氧气的制取和性质”实验课中,某同学取一
望洞庭古诗的意思!
单选题关于地壳结构的叙述,正确的是A.上层为
王者荣耀一直下载不了安装,蹦出unable retry
数码宝贝有一集就是做汉堡喂饱一个怪兽 那是
判断题如果两个乘数的末尾各有1个0,那么积的
无聊或心情不好就练书法,一练就是几个小时,
奉献近义词是什么
空气能热水器在冬天使用,最高的水温能答多少
猪脚的脚指尖壳有什么作用
推荐资讯
做完埋线双眼皮第四天了。从做的第一天就一直
你是包铝自备电厂的吗?
单选题外来物种的入侵已引起各国的注意,外来
东陈镇法治文化园在什么地方啊,我要过去处理
内裤什么牌子好 · 女生内裤有什么牌子
如何修改单位社保账户密码? 15分
求推荐一款LP的篮球运动护膝
minecraft什么时候出的
怎样使ppt中的文字出现然后消失,再是另外的
二到三岁的小孩早上经常睡懒觉好不好
下列词语中加线的字,与其声旁读音相同的一组
大麦网能退票吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?