引用
package org.tarena.day01;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class MarqueeFrame {
JTextField text = new JTextField(15);
JFrame jf= new JFrame("跑马灯");
JButton bt1 = new JButton("开始");
JButton bt2 = new JButton("结束");
public MarqueeFrame(){
bt1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
runStart();
}
});
bt2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
running = false;
}
});
JPanel jp = new JPanel(new FlowLayout());
jp.add(text);
jp.add(bt1);
jp.add(bt2);
jf.add(jp,BorderLayout.NORTH);
jf.setSize(350,100);
//jf.pack();
jf.setLocation(400, 500);
jf.setVisible(true);
jf.setResizable(false);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
static boolean running = false;
public void runStart(){
if(running) return;// 正在跑,无须再创建线程
running = true;
new Thread(){
public void run(){
while(running){// 停止按钮按下时会将running设为false
String s = text.getText();
String str1 = s.substring(0,1);
String str2 = s.substring(1);
s = str2 + str1;
text.setText(s);
try {
Thread.sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}.start();
}
public static void main(String[] args) {
new MarqueeFrame();
}
}
分享到:
相关推荐
在编程中实现跑马灯,通常涉及到字符串的动态移动和更新。对于新手来说,了解跑马灯的基本原理和实现方法是提升编程技能的良好起点。下面我们将深入探讨跑马灯的实现原理和常见技术。 1. **实现原理**: 跑马灯的...
5. 添加Update()方法,实现跑马灯效果: ```csharp void Update() { RectTransform rectTransform = (RectTransform)transform; float offset = Time.time * scrollSpeed; rectTransform.offsetMax = new Vector2...
在CocosCreator3.x中,实现游戏跑马灯全服游戏通知功能是一项重要的用户体验设计,它可以帮助游戏开发者向玩家实时推送重要信息,如活动更新、系统公告等。下面将详细介绍如何利用CocosCreator3.x来实现这一功能。 ...
在描述中提到的“跑马灯简单程序”,意味着这个程序设计相对基础,适合初学者学习。通常,这样的程序会包含以下部分: 1. 初始化:设置定时器的计数方式、周期和中断使能,初始化LED灯接口。 2. 定时器中断服务函数...
### 基于STM32的跑马灯实现详解 #### 一、引言 ...对于初学者而言,跑马灯不仅仅是一个简单的实验,更是探索STM32乃至整个嵌入式系统世界的一扇窗。希望每位读者都能在这个过程中获得乐趣并不断进步。
这个"安卓跑马灯相关-快速实现跑马灯效果的library.rar"压缩包提供了一个专门用于快速构建跑马灯效果的库,尽管可能需要开发者自行调整以确保其在特定项目中的兼容性。 要理解这个库的工作原理,首先我们需要知道在...
通过以上步骤,你可以创建一个简单的、可调节速度的跑马灯效果。在实际应用中,还可以结合动画和自定义视图进一步优化跑马灯效果,比如调整滚动速度、方向、停顿时间等。记得在开发过程中进行充分的测试,确保在各种...
要实现跑马灯效果,首先需要在XML布局文件中设置`TextView`的相关属性。关键属性包括: - `android:singleLine="true"`:限制`TextView`只显示一行文本。 - `android:ellipsize="marquee"`:开启跑马灯效果,当...
在嵌入式系统领域,尤其是在STM32微控制器上实现跑马灯功能,是学习单片机编程和硬件控制的基础练习。 STM32是一款基于ARM Cortex-M内核的32位微控制器,由意法半导体公司(STMicroelectronics)生产。它拥有高性能...
首先,为了实现跑马灯效果,我们需要创建一个新的QLabel子类,因为标准的QLabel不直接支持滚动。以下是一个简单的步骤概述: 1. 创建一个新类,例如`MarqueeLabel`,继承自`QLabel`。在头文件中声明这个新类,并...
在本案例中,我们将探讨一个名为"cxScroll"的jQuery插件,它可以帮助我们实现简单的无缝滚动跑马灯效果。 **jQuery基础**:jQuery是一个轻量级的JavaScript库,它简化了HTML文档遍历、事件处理、动画制作以及Ajax...
"博途V16跑马灯程序"是一个基于西门子SIMATIC S7-1200 PLC(可编程逻辑控制器)的编程示例,它主要用于教育和实践目的,特别是对于初学者。跑马灯是一种常见的电气工程示例,通过依次点亮或熄灭一串LED灯来模拟马在...
这里,我们关注的文件是`MarqueeView.swift`,它应该是一个实现了跑马灯效果的Swift类。 首先,`MarqueeView`会继承自`UIView`,这意味着它将拥有所有`UIView`的基本功能,如布局、渲染、事件处理等。为了实现跑马...
在HTML中,我们可以创建一个简单的容器来放置跑马灯元素,例如一个`<div>`,并设置其样式使其具有合适的宽度和高度,以及溢出隐藏(`overflow: hidden`)以实现滑动效果。 ```html <!-- 图片容器,实际图片将由...
在提供的压缩包文件"Silverlight-跑马灯"中,可能包含了示例代码或教程资源,帮助开发者更深入地理解和实现Silverlight中的跑马灯效果。通过研究这些文件,可以快速掌握跑马灯的实现方法,并将其应用于自己的项目中...
以下是一段简单的示例代码,用于解释跑马灯的基本实现: ```c #include <reg52.h> // 引入寄存器定义头文件 // 定义LED灯对应的IO口 sbit LED1 = P1^0; sbit LED2 = P1^1; sbit LED3 = P1^2; sbit LED4 = P1^3; ...
跑马灯效果是一种常见的编程练习,它通常在LED灯或者字符显示器上实现,模拟一种循环显示的效果,就像赛马场上的灯光围绕一圈转动。在这个C语言实现的跑马灯项目中,我们可以学习到一些基本的C语言编程技巧以及控制...
在XML布局文件中,我们可以使用`android:ellipsize`属性配合`android:singleLine`或`android:maxLines`来实现简单的单行或多行跑马灯效果。例如,设置`android:ellipsize="marquee"`并启用`android:...
在编程领域,跑马灯程序是一种基本的动画效果,可以使用多种编程语言实现,如C++、Python、Java等。本例中的跑马灯是作者独立完成的,可能使用了基础的编程概念和技术。 跑马灯的核心原理在于对文本或字符串进行逐...
跑马灯,也被称为流水灯,是电子工程和...总的来说,跑马灯的实现方式多样,既可以通过简单的硬件控制,也可以结合软件编程实现复杂效果。理解这些技术有助于我们在实际项目中灵活运用,创造出各种有趣的跑马灯效果。