tkinter-TinUI-xml实战(12)应用组启动器

tkinter-TinUI-xml实战(12)应用组启动器

引言

应用快捷启动器有很多现成软件,但是大多都是将常用软件分类,或者建立一个个包含一套工作、学习环境的软件类区,由用户选择启动里面的若干应用,需要一个一个点击。而像自动化软件可以一键启动多个软件,直接形成软件工作区,但我只想使用这个功能的话,自动化软件又太臃肿。

因此,我就打算写一个应用组启动器,包含如下功能:

  • 能够增、删、改每一个条目
  • 每一个条目包含若干指令、任务
  • 每一个指令是适用于命令行start的命令
  • 每一个任务就是已经存在的条目

由于当前功能并不完善,且主要用来演示TinUI,因此不会有大量逻辑源码

我将这个软件命名:QuickUp

QuickUp下载体验


主界面

主界面主要由三部分组成:

  • 搜索框(暂未实现)
  • 工具按钮(目前主要是增加条目)
  • 条目列表(包含所有当前可用任务条目)
xml 复制代码
<tinui>
<!--700 x 900-->
<line>
    <entry width="350">taskEntry</entry>
    <button2 icon="&#xE710;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['create_task']"></button2>
    <button2 icon="&#xE713;" text="" font="{Segoe Fluent Icons} 16">settingbutton</button2>
    <button2 icon="&#xE946;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['about']"></button2>
</line>
<line>
    <listview width="480" height="650" num="1">taskView</listview>
</line>
</tinui>

单独条目

单独条目是每个任务的视觉化体现,包含任务名称,同时应该有运行、打开编辑、删除的功能按钮。

xml 复制代码
<tinui>
<!-- 任务列表元素 -->
<line x="5" y="40" anchor="w">
    <title text="%TITLENAME%"></title>
</line>
<line x="475" y="40" lineanchor="e">
    <button2 icon="&#xE724;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['run_task']"></button2>
    <button2 icon="&#xE70F;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['edit_task']"></button2>
    <button2 icon="&#xE74D;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['delete_task']"></button2>
</line>
</tinui>

编辑框

编辑框是任务条目点击编辑按钮后展现的界面,包含三个部分:

  • 任务命名输入框
  • 命令、子任务添加按钮
  • 运行指令列表
xml 复制代码
<tinui>
<!-- QuickUp Editor -->
<line>
    <entry width="260">entry</entry>
    <button2 icon="&#xE74E;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['save_task']"></button2>
    <button2 text="添加命令" command="self.funcs['add_task_cmd']"></button2>
    <button2 text="添加任务" command="self.funcs['add_task_task']"></button2>
</line>
<line>
    <listview width="480" height="540" num="0" linew="100">view</listview>
</line>
</tinui>

命令行指令

命令行指令是适用于cmd中start命令的指令,主要由以下部分构成:

  1. 命令行目标应用
  2. 参数
  3. 管理员复选框
  4. 删除键
xml 复制代码
<tinui>
<!-- QuickUp Editor cmd part-->
<line y="25" anchor="w" lineanchor="w">
    <paragraph text="目标"></paragraph>
    <entry width="360">targetEntry</entry>
</line>
<line y="75" anchor="w" lineanchor="w">
    <paragraph text="参数"></paragraph>
    <entry width="320">argsEntry</entry>
</line>
<line x="475" y="25" anchor="e">
    <button2 icon="&#xE74D;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['delete_task']"></button2>
</line>
<line x="475" y="75" anchor="e">
    <checkbutton text="管理员" command="self.funcs['run_as_admin']">checkbox</checkbutton>
</line>
</tinui>

在20250214编译版本中,可以使用管理员权限选项,选中时,命令将申请管理员权限运行

子任务指令

子任务指令是运行当前已经存在任务条目的指令。

假设当前已经存在任务条目A,用来启动一组应用。而当我想搭建同样的学习软件组环境时,还想额外打开电子书文档,就可以使用如下指令:

  • 运行A
  • 用PDF阅读器打开电子书文档

这样就可以省略重复编写。

xml 复制代码
<tinui>
<!-- QuickUp Editor task part-->
<line y="15">
    <paragraph text="任务名称(填写已经存在的任务的名称)"></paragraph>
</line>
<line>
    <entry width="400">taskEntry</entry>
</line>
<line x="475" y="50" anchor="e">
    <button2 icon="&#xE74D;" text="" font="{Segoe Fluent Icons} 16" command="self.funcs['delete_task']"></button2>
</line>
</tinui>

不能循环启用(软件不限制,但肯定死机),这个指令不是在【启动anythingllm】条目里,而是在另一个条目里。

演示

QuickUp - TinUI界面演示

题外话

我发现还可以把这个用作待办事项🤣。

相关推荐
love530love几秒前
EPGF 新手教程 11在 PyCharm(中文版 GUI)中创建 uv 环境,并把 uv 做到“项目自包含”(工具本地化为必做环节)
ide·人工智能·python·pycharm·conda·uv·epgf
jackylzh1 分钟前
cmd或其它终端的dos命令 & events.out.tfevents文件怎么打开
python
gis_rc1 分钟前
python下shp转3dtiles
python·3d·cesium·3dtiles·数字孪生模型
廖圣平2 分钟前
直播间福袋脚本,研究json格式【一】
python
Lkygo4 分钟前
ragflow 构建本地知识库指南
人工智能·python·语言模型
TTGGGFF2 小时前
Supertonic 部署与使用全流程保姆级指南(附已部署镜像)
开发语言·python
love530love2 小时前
升级到 ComfyUI Desktop v0.7.0 版本后启动日志报 KeyError: ‘tensorrt‘ 错误解决方案
开发语言·windows·python·pycharm·virtualenv·comfyui·comfyui desktop
落羽凉笙8 小时前
Python学习笔记(3)|数据类型、变量与运算符:夯实基础,从入门到避坑(附图解+代码)
笔记·python·学习
Quintus五等升8 小时前
深度学习①|线性回归的实现
人工智能·python·深度学习·学习·机器学习·回归·线性回归
天远Date Lab8 小时前
Python实战:对接天远数据手机号码归属地API,实现精准用户分群与本地化运营
大数据·开发语言·python