From 7698a58aaebdd7b47a4f4250ada34e379bc9665c Mon Sep 17 00:00:00 2001 From: wangbing Date: Fri, 10 Oct 2025 09:36:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/misc.xml | 1 - .../xyz/wbsite/jmacro/JMainApplication.java | 2 +- .../xyz/wbsite/jmacro/JMainController.java | 14 +++++++ src/main/java/xyz/wbsite/jmacro/JProp.java | 9 +++++ src/main/java/xyz/wbsite/jtask/TaskImpl.java | 38 +++++++++--------- src/main/resources/icon.ico | Bin 38078 -> 1714 bytes src/main/resources/icon.png | Bin 1025 -> 2183 bytes src/main/resources/main.fxml | 33 +++++++++++---- 8 files changed, 68 insertions(+), 29 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index 6aecfa7..8d040d7 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,3 @@ - diff --git a/src/main/java/xyz/wbsite/jmacro/JMainApplication.java b/src/main/java/xyz/wbsite/jmacro/JMainApplication.java index 1318cd8..cdf55a5 100644 --- a/src/main/java/xyz/wbsite/jmacro/JMainApplication.java +++ b/src/main/java/xyz/wbsite/jmacro/JMainApplication.java @@ -30,7 +30,7 @@ public class JMainApplication extends Application { @Override public void start(Stage stage) throws Exception { - stage.setTitle("无限工具"); + stage.setTitle("芝麻糊的自动工具箱"); stage.setMinWidth(400); stage.setMinHeight(300); FXMLLoader mainLoader = FXMLUtil.load("main.fxml"); diff --git a/src/main/java/xyz/wbsite/jmacro/JMainController.java b/src/main/java/xyz/wbsite/jmacro/JMainController.java index 9703787..f318388 100644 --- a/src/main/java/xyz/wbsite/jmacro/JMainController.java +++ b/src/main/java/xyz/wbsite/jmacro/JMainController.java @@ -13,6 +13,7 @@ import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.Node; +import javafx.scene.control.CheckBox; import javafx.scene.control.Button; import javafx.scene.control.RadioButton; import javafx.scene.control.TextArea; @@ -56,6 +57,8 @@ public class JMainController implements Initializable { @FXML private Button stop; @FXML + private CheckBox autoMini; + @FXML private ToggleGroup runMode; @FXML private HBox modeLoop; @@ -86,6 +89,12 @@ public class JMainController implements Initializable { JMainController.instance = this; // 控件初始化 + boolean autoMiniValue = JProp.getInstance().getBool("autoMini", false); + autoMini.setSelected(autoMiniValue); + autoMini.setOnMouseClicked(event -> { + JProp.getInstance().setBool("autoMini", autoMini.isSelected()); + }); + String mode = JProp.getInstance().getString("mode", "loop"); ObservableList toggles = runMode.getToggles(); for (Toggle tog : toggles) { @@ -291,6 +300,11 @@ public class JMainController implements Initializable { return; } Logger.info("服务启动成功"); + + boolean autoMini = JProp.getInstance().getBool("autoMini", false); + if (autoMini) { + JMainApplication.primaryStage.setIconified(true); + } } } } diff --git a/src/main/java/xyz/wbsite/jmacro/JProp.java b/src/main/java/xyz/wbsite/jmacro/JProp.java index 6417b1a..9a7fc29 100644 --- a/src/main/java/xyz/wbsite/jmacro/JProp.java +++ b/src/main/java/xyz/wbsite/jmacro/JProp.java @@ -44,6 +44,10 @@ public class JProp { return this.props.getStr(key, "").split(","); } + public boolean getBool(String key, boolean defaultValue) { + return this.props.getBool(key, defaultValue); + } + public int getInt(String key, int defaultValue) { return this.props.getInt(key, defaultValue); } @@ -70,6 +74,11 @@ public class JProp { this.save(); } + public void setBool(String key, boolean value) { + this.props.setProperty(key, String.valueOf(value)); + this.save(); + } + public void setInt(String key, int value) { this.props.setProperty(key, String.valueOf(value)); this.save(); diff --git a/src/main/java/xyz/wbsite/jtask/TaskImpl.java b/src/main/java/xyz/wbsite/jtask/TaskImpl.java index 50045f3..e9e1b7b 100644 --- a/src/main/java/xyz/wbsite/jtask/TaskImpl.java +++ b/src/main/java/xyz/wbsite/jtask/TaskImpl.java @@ -38,24 +38,24 @@ public class TaskImpl extends JMacro { Logger.info("启动图标坐标:{}", launch.getRect().toString()); Logger.info("移动鼠标"); mouseMove(launch.getCenter()); -// Logger.info("双击我的电脑"); -// mouseLeftDoubleClick(launch); -// Logger.info("等待程序启动中,请稍等..."); -// delay(3 * 1000); -// -// Region windows = findLegend("我的电脑窗口", 0.9); -// if (windows == null) { -// Logger.error("我的电脑启动失败"); -// return; -// } -// Logger.info("定位到我的电脑窗口"); -// Logger.info("移动鼠标"); -// mouseMove(windows.getCenter().offset(100,0)); -// -// Logger.info("等待1秒后自动关闭"); -// delay(1000); -// mouseLeftClick(windows.getCenter().offset(100,0)); -// -// Logger.info("结束任务"); + Logger.info("双击我的电脑"); + mouseLeftDoubleClick(launch); + Logger.info("等待程序启动中,请稍等..."); + delay(3 * 1000); + + Region windows = findLegend("我的电脑窗口", 0.9); + if (windows == null) { + Logger.error("我的电脑启动失败"); + return; + } + Logger.info("定位到我的电脑窗口"); + Logger.info("移动鼠标"); + mouseMove(windows.getCenter().offset(100,0)); + + Logger.info("等待1秒后自动关闭"); + delay(1000); + mouseLeftClick(windows.getCenter().offset(100,0)); + + Logger.info("结束任务"); } } diff --git a/src/main/resources/icon.ico b/src/main/resources/icon.ico index 061bb64cf6ef927f4df1acfbd63c7a77af7fe10e..13e78656f56187f686399be3c41d99d8820868e2 100644 GIT binary patch literal 1714 zcmV;j22J?@0096202mkm0000W0GtK@02TlM0EtjeM-2)Z3IG5A4M|8uQUCw|7ytkO z7zhRc007{3J@^0s00d`2O+f$vv5yP z0Dy!50Qvv`0D$NK0Cg|`0P0`>06Lfe02gqax=}m;00tUKL_t(YiFK80Y!v4ehM#Zt zK6~+ccfD&Hd;{AA+c*w(3@*gP#R*aig&>q4QQIGFX;f5IRZ}&nYGqNPR!XH_qFzGP zs*2P~O#@1mHf=-7CA2ZY#E<~S7#nP3du_8`eA(Uc?#|49{b6kEn7n^xbiVhz?>Tdh z<`XPK2PoOkQV{aEYbK^red-KTN3N6Q(;*IT$6s0)3|nl7=urILk@Lg=xk#`qXYc-; ztGQw0`k!sCt^7to(AOeermI?+?>#?>{xJ2!+o`TB3m>hoS^r8T6gZ@rnTCyC?R4h| ziA9ced4k<(e_>l=U9;Dt1~;rP4fGF&>Sj`11zgdNep0++2Y#R5^V{9+Et>*)UKa?0 z`MxbF?ZQErJF=>Sj;9G!tSSC|Lw$``S-(pNJ!uR1>^|Mln@g05OaC2aV3GUvM$~Y= z^W`r+)4n|v2t<_N1|j@q!f(-Bef>l0-nyFl#i|aBdFnQ8sF)Dpx)P;&4^;0V*L{qZ z$Fg!{?Cwk7C;AAIIVADIu)n^orD0Df7%URSkE7H+3xGKnMRhsXc7SpOaw`mkLLd~( z2Y&_FTnGeWT|2hvTb_NpwmmYN(7xla+x+C@lu(44=kb zs(BDo3sAOx8v>R0E6X4U&mc!SaXRg+GI+6(ywbwZHizBjV;Qo#K|HA=V?D_9^n(K< zO>+1n;;|T+tnnZ&bCeZF-1$EB;9|%E@MI+i_O!R`F9`aJkOFiEv&l4ne&+%o^$rmm zyh?SUx}=jzCOC281Ue8hByfXMRv-eROZ3HjyZO4`t@L1bnIH8aVV!xfO8L1a{vL=_@yN3IPcOBAX! z9y{In@oq3LTGNeqiwZ)e?#fofvgMGKTn^?nFjEL^0+Gu?po;64yZGDhzKfLb%=15_ z?(uIzY7!9Os{mm`IGqT^f+czbk9q<~VO6X+tyW9eQnK~_R1|P~5O@&2$ik1A~T=j?&xhSHX9ya zfY{g|O>O%g+JP1u9878H8vxcfu9K~ajGdjhdUBWV(Y?*Wk+*`})V7cLRD!gYz|gZO zih^RX;!?dxQ|FyyFEVzci=wK{6je1)+q8oVZ~t-LH0fR;^rNRNKN&gm>eQ|7Q}XJW zzsj3k|CZAe!_v^R@{=(1tn9ydQoeEYIT`J_Af;(aQ`2Pk+keQNe&wsvKWOEri@Hnq z!I|6gR9W`Q3x!pUuA<6%ArK6Ge2#n3TNJLVUr|hK=sMB94|)14FX7b;P!vROFX3%Z z5x+ah@{4bu?XeCCNK+rQ{9jx;MM z3M1n;&9kq)HvHy4-u)$z4kTxtY=11HU@etB+rr zLI)Q45|D>?dV}lgnzmx<2P9IMx!jxAE?++NoAc=ypaaJL0qk9Xus+4sb^rhX07*qo IM6N<$g3G!#>Hq)$ literal 38078 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 - + + + + + + + + + +