使用javaGUI实现文字跑马灯的效果
时间: 2024-05-09 22:20:18 浏览: 46
javascript实现文字跑马灯效果
5星 · 资源好评率100%
以下是使用Java Swing实现文字跑马灯效果的示例代码:
```java
import javax.swing.*;
import java.awt.*;
public class MarqueeText extends JFrame implements Runnable {
private Thread marqueeThread;
private JLabel marqueeLabel;
private String text;
private int delay;
private int speed;
public MarqueeText(String text, int delay, int speed) {
super("Marquee Text");
this.text = text;
this.delay = delay;
this.speed = speed;
marqueeLabel = new JLabel(text, JLabel.CENTER);
marqueeLabel.setFont(new Font("Arial", Font.BOLD, 18));
marqueeLabel.setForeground(Color.RED);
getContentPane().add(marqueeLabel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 100);
setLocationRelativeTo(null);
setVisible(true);
marqueeThread = new Thread(this);
marqueeThread.start();
}
public void run() {
try {
while (true) {
String s = text.substring(1) + text.charAt(0);
text = s;
marqueeLabel.setText(text);
Thread.sleep(delay);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new MarqueeText("Hello world!", 100, 5);
}
}
```
在上述代码中,MarqueeText类继承自JFrame,实现了Runnable接口。在构造函数中,创建了一个JLabel,并将其添加到窗体中。然后,启动一个新线程,不断更新标签的文本内容,实现跑马灯效果。在main方法中,创建了一个MarqueeText对象,设置了文本内容、延迟时间和速度。运行程序后,将会显示一个窗体,其中的文字会不断向左滚动。
阅读全文