在python可视化界面Tkinter中用文本框输出日志信息
   2
在python可视化界面Tkinter中,用文本框输出日志信息。 大致思路,不断将日志信息输入到文本框最前面,这样最前面就是最新的信息 关键代码,在Text组件中有insert()这个方法,第一个参数索引,我们需要插入到文本最顶部,传入1.0即可,这里的1.0代表第1行,第0个字符。 self.tk_text_lb4no8xs.insert(0.0, info + "\r\n") 演示 示例代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 import datetime import threading from time import sleep from tkinter import * from tkinter.
解决ttkbootstrap的按钮组件点击后有虚线的问题
   1
在使用ttkbootstrap美化界面后,发现按钮被点击之后,会存在一个虚线框,这块看着很不美观。 第一种方法。使用tkinter老组件 经过测试发现,ttkbootstrap对tkinter老组件也有一定支持,用tkinter的按钮替换掉ttkbootstrap的按钮就可以了。代码如下。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import tkinter from ttkbootstrap import * win = Window() win.geometry("500x200") win.title("ttkbootstrap测试") ttkbtn = Button(text="点击后有虚框") ttkbtn.pack() Label(win, text="分隔一下").pack() btn = tkinter.Button(win, width=20, text="点击后没有虚框", activeforeground="#fff") btn.pack() win.mainloop() 如下图所示,上面的ttkbootstrap按钮点击后出现虚框。我在ttkbootstrap文档中找到这部分的说明,为了让tkinter组件不那么突兀,这里也做了美化,详见传统支持 按钮点击后对比图 第二种方法,将takefocus属性设置成False。推荐 完美解决。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 import tkinter from ttkbootstrap import * win = Window() win.
Nuitka打包命令详解
   1
Nuitka打包命令详解 Nuitka打包是将Python代码转换为 C 级程序, 通用打包命令 简单打包,复制以下命令即可。以下命令将程序打包到out目录下。拷贝文件夹即可分发给其他用户使用。 1 python -m nuitka --standalone --disable-console --standalone --output-dir=out main.py 常用配置项目 –standalone 开启独立模式,打包的程序不依赖本Python环境。程序中包含了Python环境,打包体积相对大些。该选项默认包含了:“–follow-imports”和“–python-flag=no_site”。默认情况下为关闭状态。 –disable-console 禁用控制台黑窗口 –onefile 先启用–standalone,再启用onefile模式。将程序打包为单个可执行文件。默认情况下为关闭状态。 –output-dir 用于指定存放,打包零时文件和最终生成文件的目录,默认在当前目录。 –output-filename 设置输出文件的名称,不建议使用。名称是中文则会出现乱码,打包之后再修改。 –windows-icon-from-ico=ICON_PATH 添加可执行文件的图标 –onefile-windows-splash-screen-image=SPLASH_SCREEN_IMAGE 使用 onefile 打包文件时 可能启动较慢,这里配置双击后的启动图片。 –windows-uac-admin 使用管理员权限打开 –enable-plugin 不清楚要加上哪些插件不用管,打包期间会出现警告,复制警告给出的配置,加到打包命令行就行。
Nuitka打包Python程序,运行后提示第三方库包含的文件不存在
   1
Nuitka打包Python程序,运行后提示第三方库包含的文件不存在。 这是由于打包时未将拓展包的文件打包到程序目录下。 解决方法: 通过命令参数 nuitka 有以下命令都可以将附件文件打包到程序目录 include-data-file 、include-data-dir,分别是导入文件和导入文件夹。 参数格式如下 “=” 前为源路径等号后为打包后路径,源路径相对于打包目录。 1 2 3 --include-data-file=files/msvcr120.dll=pyzbar/msvcr120.dll --include-data-dir=static=static 通过配置文件 找到电脑中Python的安装目录 {Python安装目录}\python3\Lib\site-packages 然后找到以下文件,该文件是处理第三方拓展包资源的配置文件。 nuitka\plugins\standard\standard.nuitka-package.config.yml 打开yml配置文件,内容如下所示。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 - module-name: 'sv_ttk' data-files: dirs: - 'theme' patterns: - 'sv.tcl' - module-name: 'pytkUI' data-files: dirs: - 'icons' patterns: - '*.json' - '*.woff' 这里yaml格式配置文件,每个短横线“-”代表一项配置。主要规则如下所示 module-name 第三方包名称 data-files 配置数据文件位置和查找规则 dirs 相对与拓展包的数据文件路径 patterns 匹配文件的规则 根据缺失的文件,在此添加配置后,重新打包即可。如果你是拓展包开发者可以将配置提交到nuitka的仓库。 参考链接 配置的参数挺多,详细可查看官方链接
站长微信
请备注来意
二维码