Plees幫助解決這個問題......我有一個設計在JFrames中的頁面 現在我需要在頁面頂部滾動一個文本....請爲我提供代碼...java中的文本滾動
0
A
回答
1
檢查了這一點,是被註釋掉,將最有可能幫助你。
http://www.abbeyworkshop.com/howto/java/ta_scroll/index.html
+0
非常感謝你 – 2011-02-14 05:06:45
1
也許這線程可能會感興趣的你:Creating A Scrolling Marquee
1
ScrollText s= new ScrollText("ello Everyone.");
jLabel3.add(s);//add it to jLabel
public class ScrollText extends JComponent {
private BufferedImage image;
private Dimension imageSize;
private volatile int currOffset;
private Thread internalThread;
private volatile boolean noStopRequested;
public ScrollText(String text) {
currOffset = 0;
buildImage(text);
setMinimumSize(imageSize);
setPreferredSize(imageSize);
setMaximumSize(imageSize);
setSize(imageSize);
noStopRequested = true;
Runnable r = new Runnable() {
public void run() {
try {
runWork();
} catch (Exception x) {
x.printStackTrace();
}
}
};
internalThread = new Thread(r, "ScrollText");
internalThread.start();
}
private void buildImage(String text) {
RenderingHints renderHints = new RenderingHints(
RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
renderHints.put(RenderingHints.KEY_RENDERING,
RenderingHints.VALUE_RENDER_QUALITY);
BufferedImage scratchImage = new BufferedImage(1, 1,
BufferedImage.TYPE_INT_RGB);
Graphics2D scratchG2 = scratchImage.createGraphics();
scratchG2.setRenderingHints(renderHints);
Font font = new Font("Serif", Font.BOLD | Font.ITALIC, 24);
FontRenderContext frc = scratchG2.getFontRenderContext();
TextLayout tl = new TextLayout(text, font, frc);
Rectangle2D textBounds = tl.getBounds();
int textWidth = (int) Math.ceil(textBounds.getWidth());
int textHeight = (int) Math.ceil(textBounds.getHeight());
int horizontalPad = 600;
int verticalPad = 10;
imageSize = new Dimension(textWidth + horizontalPad, textHeight
+ verticalPad);
image = new BufferedImage(imageSize.width, imageSize.height,
BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = image.createGraphics();
g2.setRenderingHints(renderHints);
int baselineOffset = (verticalPad/2) - ((int) textBounds.getY());
g2.setColor(Color.BLACK);
g2.fillRect(0, 0, imageSize.width, imageSize.height);
g2.setColor(Color.GREEN);
tl.draw(g2, 0, baselineOffset);
// Free-up resources right away, but keep "image" for
// animation.
scratchG2.dispose();
scratchImage.flush();
g2.dispose();
}
public void paint(Graphics g) {
// Make sure to clip the edges, regardless of curr size
g.setClip(0, 0, imageSize.width, imageSize.height);
int localOffset = currOffset; // in case it changes
g.drawImage(image, -localOffset, 0, this);
g.drawImage(image, imageSize.width - localOffset, 0, this);
g.setColor(Color.black);
g.drawRect(0, 0, imageSize.width - 1, imageSize.height - 1);
}
private void runWork() {
while (noStopRequested) {
try {
Thread.sleep(10); // 10 frames per second
// adjust the scroll position
currOffset = (currOffset + 1) % imageSize.width;
// signal the event thread to call paint()
repaint();
} catch (InterruptedException x) {
Thread.currentThread().interrupt();
}
}
}
public void stopRequest() {
noStopRequested = false;
internalThread.interrupt();
}
public boolean isAlive() {
return internalThread.isAlive();
}
}
相關問題
- 1. 在pygame中滾動文本
- 2. 在PyQt中滾動文本?
- 3. 右滾動文本
- 4. QML文本滾動
- 5. Html滾動文本
- 6. JLabel滾動文本
- 7. 滾動文本塊
- 8. Java - 滾動到JTextArea中的特定文本
- 9. 滾動文本的jQuery
- 10. 自動滾動文本
- 11. 在TextView Android中自動滾動文本
- 12. Android:在TextView中自動滾動文本
- 13. 在滾動視圖中編輯文本是不可滾動的
- 14. Android中文本行的垂直滾動滾動
- 15. 在Android中顯示類似滾動條的滾動文本
- 16. 滾動到javascript中的文本
- 17. Phonegap中的可滾動文本區/ Cordova
- 18. 滾動到JavaScript中的文本位置
- 19. 在Div中滾動的文本
- 20. 滾動型切割文本中的TextView
- 21. 屏蔽WPF中的滾動文本
- 22. Qlabel中的平滑滾動文本
- 23. 滾動查看器中的文本框
- 24. Java - 在滾動文本中插入換行符
- 25. 基本的Java:骰子滾動式
- 26. WP8 - 在全文本框中自動滾動文本
- 27. 在文本框內滾動文本
- 28. Java:滾動時填充文本區域(動態更新)
- 29. 如何使用java腳本滾動到富文本框中的指定行
- 30. DataGrid的文本自動滾動
「請給我提供的代碼......」請坐,而我們掀起了一些代碼爲你。哦,當你在等待時,幫助自己喝咖啡和甜甜圈...... – 2011-02-06 15:10:40