mirror of
https://github.com/rememberber/MooTool.git
synced 2026-09-19 10:46:38 +08:00
全局:优化系统托盘菜单
This commit is contained in:
@@ -28,8 +28,6 @@ import org.apache.commons.lang3.exception.ExceptionUtils;
|
||||
import javax.swing.*;
|
||||
import javax.swing.plaf.FontUIResource;
|
||||
import java.awt.*;
|
||||
import java.awt.event.MouseAdapter;
|
||||
import java.awt.event.MouseEvent;
|
||||
import java.util.Collections;
|
||||
import java.util.Enumeration;
|
||||
import java.util.concurrent.ScheduledThreadPoolExecutor;
|
||||
@@ -291,29 +289,6 @@ public class Init {
|
||||
JPopupMenuMouseAdapter jPopupMenuMouseAdapter = new JPopupMenuMouseAdapter(App.popupMenu);
|
||||
App.trayIcon.addMouseListener(jPopupMenuMouseAdapter);
|
||||
|
||||
App.trayIcon.addMouseListener(new MouseAdapter() {
|
||||
@Override
|
||||
public void mouseClicked(MouseEvent e) {
|
||||
switch (e.getButton()) {
|
||||
case MouseEvent.BUTTON1: {
|
||||
showMainFrame();
|
||||
break;
|
||||
}
|
||||
case MouseEvent.BUTTON2: {
|
||||
logger.debug("托盘图标中键事件");
|
||||
break;
|
||||
}
|
||||
case MouseEvent.BUTTON3: {
|
||||
logger.debug("托盘图标右键事件");
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
try {
|
||||
App.tray.add(App.trayIcon);
|
||||
} catch (AWTException e) {
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
package com.luoboduner.moo.tool.ui.component;
|
||||
|
||||
import cn.hutool.log.Log;
|
||||
import cn.hutool.log.LogFactory;
|
||||
import com.luoboduner.moo.tool.App;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.MouseAdapter;
|
||||
@@ -7,6 +11,8 @@ import java.awt.event.MouseEvent;
|
||||
|
||||
public class JPopupMenuMouseAdapter extends MouseAdapter {
|
||||
|
||||
private static final Log logger = LogFactory.get();
|
||||
|
||||
private JPopupMenu popupMenu;
|
||||
|
||||
public JPopupMenuMouseAdapter(JPopupMenu popupMenu) {
|
||||
@@ -23,6 +29,27 @@ public class JPopupMenuMouseAdapter extends MouseAdapter {
|
||||
maybeShowPopup(e);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseClicked(MouseEvent e) {
|
||||
switch (e.getButton()) {
|
||||
case MouseEvent.BUTTON1: {
|
||||
showMainFrame();
|
||||
break;
|
||||
}
|
||||
case MouseEvent.BUTTON2: {
|
||||
logger.debug("托盘图标中键事件");
|
||||
break;
|
||||
}
|
||||
case MouseEvent.BUTTON3: {
|
||||
logger.debug("托盘图标右键事件");
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void maybeShowPopup(MouseEvent e) {
|
||||
if (e.isPopupTrigger()) {
|
||||
Dimension size = popupMenu.getPreferredSize();
|
||||
@@ -31,4 +58,14 @@ public class JPopupMenuMouseAdapter extends MouseAdapter {
|
||||
popupMenu.setVisible(true);
|
||||
}
|
||||
}
|
||||
|
||||
public static void showMainFrame() {
|
||||
App.mainFrame.setVisible(true);
|
||||
if (App.mainFrame.getExtendedState() == Frame.ICONIFIED) {
|
||||
App.mainFrame.setExtendedState(Frame.NORMAL);
|
||||
} else if (App.mainFrame.getExtendedState() == 7) {
|
||||
App.mainFrame.setExtendedState(Frame.MAXIMIZED_BOTH);
|
||||
}
|
||||
App.mainFrame.requestFocus();
|
||||
}
|
||||
}
|
||||
@@ -342,8 +342,8 @@ public class TopMenuBar extends JMenuBar {
|
||||
|
||||
FlatAnimatedLafChange.hideSnapshotWithAnimation();
|
||||
|
||||
JOptionPane.showMessageDialog(MainWindow.getInstance().getMainPanel(), "部分细节重启应用后生效!\n\n", "成功",
|
||||
JOptionPane.INFORMATION_MESSAGE);
|
||||
// JOptionPane.showMessageDialog(MainWindow.getInstance().getMainPanel(), "部分细节重启应用后生效!\n\n", "成功",
|
||||
// JOptionPane.INFORMATION_MESSAGE);
|
||||
|
||||
initFontSizeMenu();
|
||||
|
||||
@@ -372,8 +372,8 @@ public class TopMenuBar extends JMenuBar {
|
||||
|
||||
FlatAnimatedLafChange.hideSnapshotWithAnimation();
|
||||
|
||||
JOptionPane.showMessageDialog(MainWindow.getInstance().getMainPanel(), "部分细节重启应用后生效!\n\n", "成功",
|
||||
JOptionPane.INFORMATION_MESSAGE);
|
||||
// JOptionPane.showMessageDialog(MainWindow.getInstance().getMainPanel(), "部分细节重启应用后生效!\n\n", "成功",
|
||||
// JOptionPane.INFORMATION_MESSAGE);
|
||||
|
||||
initFontFamilyMenu();
|
||||
|
||||
@@ -390,8 +390,8 @@ public class TopMenuBar extends JMenuBar {
|
||||
|
||||
changeTheme(selectedThemeName);
|
||||
|
||||
JOptionPane.showMessageDialog(MainWindow.getInstance().getMainPanel(), "部分细节重启应用后生效!\n\n", "成功",
|
||||
JOptionPane.INFORMATION_MESSAGE);
|
||||
// JOptionPane.showMessageDialog(MainWindow.getInstance().getMainPanel(), "部分细节重启应用后生效!\n\n", "成功",
|
||||
// JOptionPane.INFORMATION_MESSAGE);
|
||||
|
||||
} catch (Exception e1) {
|
||||
JOptionPane.showMessageDialog(MainWindow.getInstance().getMainPanel(), "保存失败!\n\n" + e1.getMessage(), "失败",
|
||||
|
||||
Reference in New Issue
Block a user