Windows 上で動作する Java SWT で記述されたデスクトップ ベースの UI アプリケーションがあります。
下の画像に示すように、UI 画面にボタンを追加したいと考えています。その動作は、iPhone のバッジや Facebook の通知に似ている必要があります。
バッジの数字は動的で、保留中の通知の数に基づいて増減します。
SWT/AWT で同様のものを実装するにはどうすればよいですか?
IOS バッジ:
また、これにはコントロール装飾を使用できます。hide()
利点は、メソッドを使用して通知を簡単に非表示/表示し、show()
ツールヒント テキストとリスナーを追加できることです。
コントロール装飾の使用方法については、このブログを参照してください。Button
ケースの代わりにウィジェットを使用Text
してください。
以下のように通知画像を作成し、ControlDecoration
オブジェクトに設定します。
Image image = new Image(display, 20, 25);
GC gc = new GC(image);
gc.setBackground(display.getSystemColor(SWT.COLOR_RED));
gc.fillRectangle(0, 0, 20, 25);
gc.setForeground(display.getSystemColor(SWT.COLOR_WHITE));
int notif = 5;
gc.drawText(new Integer(notif).toString(), 5, 5);
gc.dispose();