Swing/ClickTrayIcon のバックアップ差分(No.4)
- バックアップ一覧
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- バックアップ を表示
- Swing/ClickTrayIcon へ行く。
- 1 (2009-04-13 (月) 14:23:01)
- 2 (2012-10-24 (水) 13:48:34)
- 3 (2013-01-10 (木) 17:40:51)
- 4 (2014-12-25 (木) 16:38:37)
- 5 (2015-01-23 (金) 19:27:14)
- 6 (2015-06-23 (火) 16:15:08)
- 7 (2017-03-21 (火) 13:51:47)
- 8 (2018-01-18 (木) 16:09:52)
- 9 (2020-01-08 (水) 20:45:22)
- 10 (2021-07-07 (水) 20:35:45)
- 11 (2025-01-03 (金) 08:57:02)
- 12 (2025-01-03 (金) 09:01:23)
- 13 (2025-01-03 (金) 09:02:38)
- 14 (2025-01-03 (金) 09:03:21)
- 15 (2025-01-03 (金) 09:04:02)
- 16 (2025-06-19 (木) 12:41:37)
- 17 (2025-06-19 (木) 12:43:47)
- 追加された行はこの色です。
- 削除された行はこの色です。
TITLE:TrayIconのダブルクリック #navi(../) #tags() RIGHT:Posted by &author(aterai); at 2009-04-13 *TrayIconのダブルクリック [#r2d65c3b] TrayIconをダブルクリックした場合フレームを表示、シングルクリックした場合はフレームを前面に表示します。 --- title: TrayIconのダブルクリック tags: [TrayIcon, SystemTray, MouseListener, JFrame] author: aterai pubdate: 2009-04-13T14:23:01+09:00 description: TrayIconをダブルクリックした場合フレームを表示、シングルクリックした場合はフレームを前面に表示します。 --- * 概要 [#r2d65c3b] `TrayIcon`をダブルクリックした場合フレームを表示、シングルクリックした場合はフレームを前面に表示します。 //-&jnlp; -&jar; -&zip; #download(https://lh5.googleusercontent.com/_9Z4BYR88imo/TQTJK3dhHYI/AAAAAAAAAT8/1MUtk0Z-NQU/s800/ClickTrayIcon.png) //#screenshot #ref(http://lh5.ggpht.com/_9Z4BYR88imo/TQTJK3dhHYI/AAAAAAAAAT8/1MUtk0Z-NQU/s800/ClickTrayIcon.png) **サンプルコード [#u2cc7663] * サンプルコード [#u2cc7663] #code(link){{ Image image = new BufferedImage(16,16,BufferedImage.TYPE_INT_ARGB); new StarIcon().paintIcon(null, image.getGraphics(), 0, 0); final SystemTray tray = SystemTray.getSystemTray(); PopupMenu popup = new PopupMenu(); MenuItem open = new MenuItem("Option"); MenuItem exit = new MenuItem("Exit"); final TrayIcon icon = new TrayIcon(image, "Click Test", popup); popup.add(open); popup.add(exit); icon.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { if(e.getButton()==MouseEvent.BUTTON1 && e.getClickCount()==2) { frame.setVisible(true); }else if(frame.isVisible()) { frame.setExtendedState(JFrame.NORMAL); frame.toFront(); } } }); open.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { frame.setVisible(true); } }); exit.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { tray.remove(icon); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); //frame.dispose(); frame.getToolkit().getSystemEventQueue().postEvent( new WindowEvent(frame, WindowEvent.WINDOW_CLOSING)); } }); try{ tray.add(icon); }catch(AWTException e) { e.printStackTrace(); } }} **解説 [#v89daafe] TrayIconにマウスリスナーを追加してマウスでダブルクリックした場合の動作を変更します。 * 解説 [#v89daafe] `TrayIcon`にマウスリスナーを追加してマウスでダブルクリックした場合の動作を変更します。 -左ボタンをダブルクリック --フレームが非表示の場合は、再表示 -左ボタンをシングルクリック --フレームが表示、または最小化されている場合、元のサイズに戻して最前面に表示 --フレームが非表示の場合は、なにもしない - 左ボタンをダブルクリック -- フレームが非表示の場合は、再表示 - 左ボタンをシングルクリック -- フレームが表示、または最小化されている場合、元のサイズに戻して最前面に表示 -- フレームが非表示の場合は、なにもしない -中ボタンのクリック --なにもしない - 中ボタンのクリック -- なにもしない -右ボタンのクリック --ポップアップメニューを表示 - 右ボタンのクリック -- ポップアップメニューを表示 **参考リンク [#q74e6754] -[[SystemTrayにアイコンを表示>Swing/SystemTray]] -[[TrayIconのアニメーション>Swing/AnimatedTrayIcon]] * 参考リンク [#q74e6754] - [[SystemTrayにアイコンを表示>Swing/SystemTray]] - [[TrayIconのアニメーション>Swing/AnimatedTrayIcon]] **コメント [#i6057375] * コメント [#i6057375] #comment #comment