2013-01-15 21 views
1

這是我在這個論壇的第一篇文章,我真的希望它會盡快回答。我是Java新手,喜歡經常嘗試不同的東西。我想在Java中製作簡單的氣球消息應用程序,該應用程序會在系統托盤中的某個特定時間彈出,並隨時傳遞不同的消息。只是想知道我是否可以更改氣球消息的文本大小。此外,如果有人能夠幫助我解決時間間隔和延遲消息的出現和消失。下面是我嘗試的代碼,請思考一下,以幫助我解決這個問題。trayicon.displaymessage文本大小java

import java.awt.Image; 
import java.awt.SystemTray; 
import java.awt.TrayIcon; 
import javax.swing.ImageIcon; 


public class BubbleMessages { 


public static void main(String[] args) throws Exception{ 
    SystemTray tray = SystemTray.getSystemTray(); 
    Image i = new ImageIcon("resources/bulb.gif").getImage(); 
    TrayIcon ti = new TrayIcon(i); 
    tray.add(ti); 
    ti.displayMessage("Message", "message", TrayIcon.MessageType.INFO); 

    } 
    } 

回答

0

檢查api。該消息將在用戶點擊後自動消失。

如果您想再次顯示信息,您可以使用Timer

您可以修改這樣

import java.awt.Image; 
import java.awt.SystemTray; 
import java.awt.TrayIcon; 
import javax.swing.ImageIcon; 
public class BubbleMessages { 
    private static TrayIcon ti; 
    public static void main(String[] args) throws Exception{ 
     SystemTray tray = SystemTray.getSystemTray(); 
     Image i = new ImageIcon("resources/bulb.gif").getImage(); 
     ti = new TrayIcon(i); 
     tray.add(ti); 
     MessageDisplayTask mdt = new MessageDisplayTask(ti); 
     java.util.Timer timer = new java.util.Timer("DM"); 
     timer.schedule(mdt, 0, 10000);//Every three seconds, it shows a message 
    } 
} 
class MessageDisplayTask extends java.util.TimerTask { 
    private TrayIcon ti; 
    private int displayCount = 0; 
    public MessageDisplayTask(TrayIcon ti){ 
     this.ti = ti; 
    } 
    public void run() { 
     displayCount++; 
     if (displayCount <= 10) { 
      ti.displayMessage("Message", "Message#" + displayCount, TrayIcon.MessageType.INFO); 
     } else { 
      //Stop Timer. 
      this.cancel(); 
     } 
    } 
} 
0
tray.add(ti); 
ti.setImageAutoSize(true); 
ti.displayMessage("Message", "message", TrayIcon.MessageType.INFO); 
代碼