news 2026/4/16 12:27:37

用AI为TinUI写日期滚动选值框

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用AI为TinUI写日期滚动选值框

用AI为TinUI写日期滚动选值框

  • 引言
  • 提问方式
  • 结果
    • GLM-4.7
    • DeepSeek-r1
    • MS Copilot
    • Gemini
  • 效果

引言

TinUI滚动选值框picker的构建介绍见文章tkinter绘制组件(40)——滚动选值框_滚动选择框-CSDN博客。

日期滚动选值框无论是功能目的、交互逻辑、样式外观,其实就是picker,只不过,每个月的天数是不同的,闰年平年的二月份天数也不同,选项的变动就使得TinUI本身的picker很为难。所以,我决定单独为TinUI写一个拓展控件。当然,这个决定其实很早就有了,但是,我懒得写😋,由于各种各样的事情耽误了。

以下一行是本文在笔记一栏而非正文栏目的原因。

虽然成果可用,但是本文仅供娱乐。

随着AI的发展,虽然也就那样,依靠大模型自身努力和已经写好的picker代码,我能快速完成一个基础可用的TinUIDatePicker吗?

登场的选手有:

  • GLM-4.7(深度思考
  • DeepSeek-r1
  • MS Copilot(smart
  • Gemini3(思考

Smart-Space/TinUIPicker: TinUI高级滚动选择器

截止本文章发表,TinUIPicker下只实现了日期选择器时间选择器其实很简单


提问方式

将TinUI的picker代码单独列入md文件(见仓库的prompt.md文件),询问内容如下:

这里面是TinUI的picker源代码,self为BasicTinUI(相当于tkinter画布)。我现在想创建一个新控件,即日期选择器,请分析源码,理解,并将日期选择器编写为一个类,包含年月日、注意闰年

挺随意的。提示词可能会影响模型工作,但是大家都笑你的时候偏偏你最好笑就非常有节目效果。


结果

忘记留证了,描述一下吧🤯。

GLM-4.7

选择列表界面正确,但是按钮位置错位甚至变形,即原本的按钮重新布局代码有问题。我不知道glm改这玩意干啥。

# 以下是Gemini生成片段,跟picker一致# 调整按钮背景框 (源码中的 coords 调整逻辑)mid=(width-9)/2bar.coords(ok[1],(9,height-35,mid-5,height-35,mid-5,height-9,9,height-9))bar.coords(ok[2],(8,height-34,mid-4,height-34,mid-4,height-8,8,height-8))bar.coords(no[1],(mid+5,height-35,width-9,height-35,width-9,height-9,mid+5,height-9))bar.coords(no[2],(mid+4,height-34,width-8,height-34,width-8,height-8,mid+4,height-8))

另外,所有月份都是31天,还能选🤣。

DeepSeek-r1

按钮位置跟picker一样,严丝合缝,但是选择列表宽出了背景元素。很奇怪,picker源码的背景元素的尺寸是通过所有元素的尺寸计算出来的,d老师跟glm一样,对我的设计进行了亿点修改。

同样的,月份都是31天,不过不合法的日期选了之后不会触发回调,但是一个2026-02-31就很难绷🙃。

MS Copilot

小丑,不如人意。

  1. 三个列表选择器中间本来就俩间隔,完了还不一样
  2. 不像deepseek选择器右移5单位,copilot的选择器斜向左上漂移
  3. 选择认定按钮冒出“确定”两个字,这两个字从来没出现过,完了还在背景元素的底边正中间
  4. 根本没有取消按钮,被移出窗口可视范围了

但是copilot的动态天份变动对了呀🫡。

Gemini

正常。甚至,gemini是唯一一个注意到__ui_polygon__ui_toplevelBasicTinUI私有方法的模型,需要使用_BasicTinUI__ui_<...>调用。

当然,配色参数漏了一大堆,以及忽略了TinUIString的面板布局结构,不过已经很不错了,这些我自己加上去就行。

此外,我对样式尺寸进行了小修,就完成了一个基本可用的TinUI日期选择器。


效果

我在datepicker.py提供了两个配色表:pickerlightpickerdark

dark样式

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 22:40:39

Proxmox VE系统监控功能探索与实践指南

Proxmox VE系统监控功能探索与实践指南 【免费下载链接】pvetools pvetools - 为 Proxmox VE 设计的脚本工具集&#xff0c;用于简化邮件、Samba、NFS、ZFS 等配置&#xff0c;以及嵌套虚拟化、Docker 和硬件直通等高级功能&#xff0c;适合系统管理员和虚拟化技术爱好者。 项…

作者头像 李华
网站建设 2026/4/10 6:47:28

Qwen3-32B数据结构优化:提升大规模文本处理效率

Qwen3-32B数据结构优化&#xff1a;提升大规模文本处理效率 1. 引言&#xff1a;为什么需要优化数据结构&#xff1f; 在处理大规模文本数据时&#xff0c;数据结构的选择直接影响着模型的性能和资源消耗。Qwen3-32B作为一款强大的语言模型&#xff0c;其核心能力依赖于高效的…

作者头像 李华
网站建设 2026/4/10 20:24:48

硬件调试与性能优化探索指南:解锁AMD处理器潜力

硬件调试与性能优化探索指南&#xff1a;解锁AMD处理器潜力 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gitcode.…

作者头像 李华
网站建设 2026/4/15 15:06:52

保姆级教学:如何为Qwen2.5-7B添加自我认知能力

保姆级教学&#xff1a;如何为Qwen2.5-7B添加自我认知能力 你是否想过&#xff0c;让一个大模型真正“认识自己”&#xff1f;不是简单地背诵预设回答&#xff0c;而是通过微调&#xff0c;让它在每次对话中自然流露出专属身份——比如“我是CSDN迪菲赫尔曼开发的助手”&#…

作者头像 李华
网站建设 2026/4/12 15:01:57

PyTorch-2.x-Universal-Dev-v1.0实测:数据处理效率提升显著

PyTorch-2.x-Universal-Dev-v1.0实测&#xff1a;数据处理效率提升显著 在深度学习开发中&#xff0c;环境配置往往比模型训练本身更耗费时间。你是否经历过这样的场景&#xff1a;花两小时配好CUDA、PyTorch和各种依赖&#xff0c;刚跑通第一个数据加载器&#xff0c;却发现p…

作者头像 李华
网站建设 2026/3/20 6:51:21

从零开始:STC15W4K32S4的ADC功能实战指南

STC15W4K32S4单片机ADC开发实战&#xff1a;从寄存器配置到传感器数据采集 在嵌入式系统设计中&#xff0c;模拟信号采集是不可或缺的核心功能之一。STC15W4K32S4作为国产增强型51单片机&#xff0c;其内置的10位ADC模块为各类传感器接口提供了经济高效的解决方案。本文将深入…

作者头像 李华