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界面演示

题外话

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

相关推荐
鸡鸭扣27 分钟前
Docker:3、在VSCode上安装并运行python程序或JavaScript程序
运维·vscode·python·docker·容器·js
paterWang1 小时前
基于 Python 和 OpenCV 的酒店客房入侵检测系统设计与实现
开发语言·python·opencv
东方佑1 小时前
使用Python和OpenCV实现图像像素压缩与解压
开发语言·python·opencv
神秘_博士2 小时前
自制AirTag,支持安卓/鸿蒙/PC/Home Assistant,无需拥有iPhone
arm开发·python·物联网·flutter·docker·gitee
Moutai码农3 小时前
机器学习-生命周期
人工智能·python·机器学习·数据挖掘
小白教程4 小时前
python学习笔记,python处理 Excel、Word、PPT 以及邮件自动化办公
python·python学习·python安装
武陵悭臾4 小时前
网络爬虫学习:借助DeepSeek完善爬虫软件,实现模拟鼠标右键点击,将链接另存为本地文件
python·selenium·网络爬虫·pyautogui·deepseek·鼠标右键模拟·保存链接为htm
代码猪猪傻瓜coding5 小时前
关于 形状信息提取的说明
人工智能·python·深度学习
码界筑梦坊6 小时前
基于Flask的第七次人口普查数据分析系统的设计与实现
后端·python·信息可视化·flask·毕业设计
微笑的Java6 小时前
Python - 爬虫利器 - BeautifulSoup4常用 API
开发语言·爬虫·python