Java基于線程實(shí)現(xiàn)帶有滾動(dòng)效果的Label標(biāo)簽實(shí)例
本文實(shí)例講述了Java基于線程實(shí)現(xiàn)帶有滾動(dòng)效果的Label標(biāo)簽。分享給大家供大家參考。具體如下:
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
/**
* Java中用線程實(shí)現(xiàn)帶有滾動(dòng)效果的Label標(biāo)簽
*/
public class Test extends JFrame {
private static final long serialVersionUID = -2397593626990759111L;
private JPanel pane = null;
private MoveLabel label = null;
public Test() {
super("Test");
pane = new JPanel();
label = new MoveLabel("帶有滾動(dòng)效果的標(biāo)簽");
pane.add(label);
this.getContentPane().add(pane);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(300, 200);
this.setVisible(true);
}
public static void main(String args[]) {
new Test();
}
/**
* 帶有滾動(dòng)效果的Label標(biāo)簽,可繼續(xù)拓展很多特效,例如顏色變換、速度變換等
*/
private class MoveLabel extends JLabel implements Runnable {
private static final long serialVersionUID = 1891684760189602720L;
private String text = null;
private Thread thread = null;
private int x = 0;
private int w = 0, h = 0;
public MoveLabel(String text) {
super(text);
this.text = text;
thread = new Thread(this);
thread.start();
}
public String getText() {
return text;
}
public void setText(String text) {
super.setText(text);
this.text = text;
}
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(this.getBackground());
g.fillRect(0, 0, w = this.getWidth(), h = this.getHeight());
g.setColor(this.getForeground());
g.setFont(this.getFont());
g.drawString(text, x, h - 2);
}
public void run() {
while (true) {
x -= 2;
if (x < -w) {
x = w;
}
this.repaint();
try {
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
希望本文所述對(duì)大家的java程序設(shè)計(jì)有所幫助。
- JavaWeb開發(fā)之JSTL標(biāo)簽庫(kù)的使用、 自定義EL函數(shù)、自定義標(biāo)簽(帶屬性的、帶標(biāo)簽體的)
- javaWeb自定義標(biāo)簽用法實(shí)例詳解
- JSP自定義標(biāo)簽-標(biāo)簽屬性_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- Java開發(fā)框架spring實(shí)現(xiàn)自定義緩存標(biāo)簽
- Java自定義簡(jiǎn)單標(biāo)簽實(shí)例
- java基礎(chǔ)之標(biāo)簽、按鈕和按鈕事件簡(jiǎn)介
- java實(shí)現(xiàn)利用String類的簡(jiǎn)單方法讀取xml文件中某個(gè)標(biāo)簽中的內(nèi)容
- java使用正則表達(dá)式過濾html標(biāo)簽
- Java自定義標(biāo)簽用法實(shí)例分析
相關(guān)文章
feign開啟日志Logger.Level?feignLoggerLevel()中Level爆紅的解決
這篇文章主要介紹了feign開啟日志Logger.Level?feignLoggerLevel()中Level爆紅的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06
Java實(shí)現(xiàn)求數(shù)組最長(zhǎng)子序列算法示例
這篇文章主要介紹了Java實(shí)現(xiàn)求數(shù)組最長(zhǎng)子序列算法,涉及java針對(duì)數(shù)組的遞歸遍歷、判斷相關(guān)操作技巧,需要的朋友可以參考下2018-07-07
Spring MVC參數(shù)自動(dòng)綁定List的解決方法
這篇文章主要為大家詳細(xì)介紹了Spring MVC參數(shù)自動(dòng)綁定List的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
SpringBoot多數(shù)據(jù)源配置并通過注解實(shí)現(xiàn)動(dòng)態(tài)切換數(shù)據(jù)源
本文主要介紹了SpringBoot多數(shù)據(jù)源配置并通過注解實(shí)現(xiàn)動(dòng)態(tài)切換數(shù)據(jù)源,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
詳解Spring Boot加載properties和yml配置文件
本篇文章主要介紹了詳解Spring Boot加載properties和yml配置文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
SpringBoot統(tǒng)一功能處理實(shí)現(xiàn)的全過程
最近在做項(xiàng)目時(shí)需要對(duì)異常進(jìn)行全局統(tǒng)一處理,主要是一些分類入庫(kù)以及記錄日志等,下面這篇文章主要給大家介紹了關(guān)于SpringBoot統(tǒng)一功能處理實(shí)現(xiàn)的相關(guān)資料,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01

