77 <input type =" checkbox" v-model =" autoLaunch" @change =" toggleAutoLaunch" />
88 </div >
99
10- <div class =" m-4" style =" display : flex ; justify-content : space-between ;align-items : center ;" >
11- <p style =" margin-right : 10px ;" >主题</p >
12- <el-select append-to =" .home" v-model =" theme" @change =" changeTheme" placeholder =" Select" style =" width : 240px " >
13- <el-option v-for =" item in themes" :key =" item.id" :label =" item.value" :value =" item.id" />
14- </el-select >
10+ <div class =" m-4" style =" display : flex ;justify-content : space-between ; align-items : center ;" >
11+ <div style =" display : flex ;align-items : center ;" >
12+ <p style =" margin-right : 10px ;" >启动编组后退出</p >
13+ <el-tooltip content =" 在启动某个编组后退出应用程序" placement =" top" >
14+ <Help theme =" outline" size =" 15" fill =" #333" />
15+ </el-tooltip >
16+ </div >
17+ <input type =" checkbox" v-model =" launchThenExit" @change =" toggleLaunchThenExit" />
1518 </div >
1619
1720 <div class =" m-4" style =" display : flex ; justify-content : space-between ;align-items : center ;" >
2124 <Help theme =" outline" size =" 15" fill =" #333" />
2225 </el-tooltip >
2326 </div >
24- <el-select append-to =" .home" v-model =" autoStartLauncherIds" @change =" saveAutoStartLauncher" style = " width : 240 px ; " multiple
25- collapse-tags collapse-tags-tooltip placeholder =" Select" >
27+ <el-select append-to =" .home" v-model =" autoStartLauncherIds" @change =" saveAutoStartLauncher"
28+ style = " width : 240 px ; " multiple collapse-tags collapse-tags-tooltip placeholder =" Select" >
2629 <el-option v-for =" item in launchers" :key =" item.id" :label =" item.name" :value =" item.id" >
2730 </el-option >
2831 </el-select >
2932 </div >
3033
34+ <div class =" m-4" style =" display : flex ; justify-content : space-between ;align-items : center ;" >
35+ <p style =" margin-right : 10px ;" >主题</p >
36+ <el-select append-to =" .home" v-model =" theme" @change =" changeTheme" placeholder =" Select"
37+ style =" width : 240px " >
38+ <el-option v-for =" item in themes" :key =" item.id" :label =" item.value" :value =" item.id" />
39+ </el-select >
40+ </div >
41+
3142 <div class =" m-4" style =" display : flex ;justify-content : space-between ; align-items : center ;" >
3243 <div style =" display : flex ;align-items : center ;" >
33- <p style =" margin-right : 10px ;" >启动编组后退出</p >
34- <el-tooltip content =" 在启动某个编组后退出应用程序" placement =" top" >
35- <Help theme =" outline" size =" 15" fill =" #333" />
36- </el-tooltip >
44+ <p style =" margin-right : 10px ;" >关闭主面板</p >
45+ </div >
46+ <div class =" my-2 ml-4" >
47+ <el-radio-group v-model =" closeMainPanel" @change =" saveCloseMainPanel" >
48+ <el-radio value =" m1" >最小化到系统托盘</el-radio >
49+ <el-radio value =" m2" >退出一键启动</el-radio >
50+ </el-radio-group >
3751 </div >
38- <input type =" checkbox" v-model =" launchThenExit" @change =" toggleLaunchThenExit" />
3952 </div >
4053
4154 <!-- 按钮 -->
42- <button >刷新</button >
55+ <button @click = " loadCloseMainPanel " >刷新</button >
4356
4457 </div >
4558</template >
@@ -62,6 +75,7 @@ export default {
6275 const autoStartLauncherIds = ref ([]);
6376 const launchThenExit = ref (false );
6477 const themes = ref ([{ " id" : " light" , " value" : " 浅色主题" }, { " id" : " dark" , " value" : " 深色主题" }]);
78+ const closeMainPanel = ref ();
6579
6680 // 从后端加载主题
6781 const loadTheme = async () => {
@@ -130,6 +144,19 @@ export default {
130144 launchThenExit .value = kv == null || kv .value === " true" ;
131145 };
132146
147+ const loadCloseMainPanel = async () => {
148+ const kv = await invoke (" read_setting" , { key: " close_main_panel" });
149+ if (null == kv? .value ) {
150+ closeMainPanel .value = " m1" ;
151+ } else {
152+ closeMainPanel .value = kv .value ;
153+ }
154+ };
155+
156+ const saveCloseMainPanel = async () => {
157+ await invoke (" save_setting" , { key: " close_main_panel" , value: closeMainPanel .value });
158+ };
159+
133160 const toggleLaunchThenExit = async () => {
134161 await invoke (" save_setting" , { key: " launch_then_exit" , value: launchThenExit .value ? " true" : " false" });
135162 };
@@ -140,6 +167,7 @@ export default {
140167 fetchAutoLaunchStatus ();
141168 refreshAutoStartLaunchers ();
142169 loadLaunchThenExit ();
170+ loadCloseMainPanel ();
143171 });
144172
145173 return {
@@ -152,7 +180,10 @@ export default {
152180 changeTheme,
153181 toggleAutoLaunch,
154182 launchThenExit,
155- toggleLaunchThenExit
183+ toggleLaunchThenExit,
184+ closeMainPanel,
185+ saveCloseMainPanel,
186+ loadCloseMainPanel
156187 };
157188 }
158189};
@@ -188,8 +219,9 @@ label {
188219
189220button {
190221 padding: 10px 20px ;
191- background- color: #409eff ;;
192- border- color: #409eff ;
222+ background- color: #409eff ;
223+ ;
224+ border- color: #409eff ;
193225 color: white;
194226 border: none;
195227 border- radius: 5px ;
0 commit comments