笔者认为,这两个作为Python3较为常用且简单的GUI模块,是Python开发者所必须学习至少是了解的。

其中tkinter为Python3自带的GUI模块,而pyqt5则需要通过pip install pyqt5来下载,并下载相应的图形化编辑工具Qt Designer。

安装第三方包时遇到问题可以访问笔者的原创博客来解决:https://www.cnblogs.com/-X-peng/p/13746579.html

一、tkinter简介:

(此部分内容摘自:https://blog.csdn.net/gongqingkui/article/details/86105399)

1.1、注意

2.x版本下名为Tkinter,3.X下名为tkinter,注意首字母大小写不一样
最简单界面

Import tkinter as tk

Root = tk.Tk()

Tk.mainloop()
1.2、组件

Label l1 = tk.Label(root,text=’xxx’)第一个参数是Tk()对象,然后l1.pack()布局就行啦。
核心组件Toplevel,Label,Button,Canvas,Checkbutton,Entry,Frame,LabelFrame,Listbox,Menu,Menubutton,Message,OptionMenu,PaneWindow,Radiobutton,Scale,Scrollbar,Spinbox,Text,Bitmap,Image
Button绑定函数
Command=函数名
Button1.bind(‘<Button-1>’,函数名)
具体属性参考源码
注意,组件的variable或者textvariable 挂钩tk内置的变量即:
Pic_dir = StringVar() Entry(root,textvariable=pic_dic).pack()
内置变量有方法set 和get,用法可想而知
Radiobutton公用一个variable,value不同。Checkbutton用variable的变量是tk变量数组list。
其他常用组件
Messagebox 弹出消息框之类 .askokcancel(title,note)
Filedialog.askdirectory() 弹出目录选择窗口,返回目录名

1.3、布局

布局三种方法,pack grid place,同级只能用一种方法,可以用Frame破解规定

Pace 向下居中分部,有属性side = tk.LEFT,fill = tk.X tk.BOTH,anchor属性N,NE,E,SE,S,SW,W,NW,CENTER九个不同的值。
Grid 网格布局 row column 属性,从0开始
Place绝对值

1.4、菜单

Menubar = tk.Menu(root)

For i in ls:

Menubar.add_command(label=’xxx’,command=aaa’

Root[‘menu’]=menubar

子目录的话,再附加

Fmenu = tk.Menu(menubar)

Menubar.add_cascade(label=’文件’,menu=fmenu)

二、pyqt5简介

PyQt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是目前最强大的库之一。PyQt是由Phil Thompson 开发。

PyQt实现了一个Python模块集。它有超过300类,将近6000个函数和方法。它是一个多平台的工具包,可以运行在所有主要操作系统上,包括UNIX,Windows和Mac。

PyQt采用双许可证,开发人员可以选择GPL和商业许可。在此之前,GPL的版本只能用在Unix上,从PyQt的版本4开始,GPL许可证可用于所有支持的平台。

访问此网站学习了解:https://www.jianshu.com/p/c61fc80ad6b3

(注意前提工作是将Qt designer与pycharm关联配置好)

python的部分GUI模块简介tkinter、pyqt5(Qt Designer)的更多相关文章

  1. Python内建GUI模块Tkinter(一)

    Python主窗口 Python特定的GUI界面,是一个图像的窗口,tkinter是python自带的,可以编辑的GUI界面,我们可以用GUI实现很多一个直观的功能,如何想开发一个计算器,如果只是一个 ...

  2. 8.python内置模块之random模块简介

    Python中的random模块用于生成随机数. 常用的7个函数: 1.random.random():返回一个[0,1)之间的随机浮点值(双精度) 2.random.uniform(a,b):返回[ ...

  3. PyQt5 & Qt Designer使用小结

    开始在知乎写文章的原因,主要还是想整理平时的经验,方便自己以后查看,有机会的话大家也可以交流吧. 11月中旬由于项目需要,和另一名实习生负责使用Python开发一个数据分析的小软件. 虽然才开始接触Q ...

  4. PyCharm+PyQt5+Qt Designer配置

    配置前提 因为本机已经配置完毕了,本次使用的是虚拟机中的Win7系统,Win10系统操作步骤完全一样,无任何区别 PyCharm (这个不多说,官网下载安装,我是用的是2019.3版本) Python ...

  5. Python内建GUI模块Tkinter(二)

    Python核心组件 1.Button 按钮组件:一个简单的按钮,用来执行一个命令或别的操作. 参数解析: text:指定按钮上显示的文本: anchor: 指定按钮上文本的位置(N, NE, E, ...

  6. Python内置GUI模块Tkinter的几点笔记

    组件属性,用法 组件位置 更多

  7. python中os.path模块简介

    1.python中获取当前工作目录 curDir = os.getcwd() os.getcwd()返回的是执行命令时所在的目录,而不是脚本本身所在的目录 2.os.path os.path.absp ...

  8. 痞子衡嵌入式:超级好用的可视化PyQt GUI构建工具(Qt Designer)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是PyQt GUI构建工具Qt Designer. 痞子衡开博客至今已有好几年,一直以嵌入式开发相关主题的文章为主线,偶尔穿插一些其他技术 ...

  9. python - Tkinter 模块 - python 自带的gui模块

    Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口,位Python的内置模块,直接import tkinter即可使用. 1.创建窗口 from Tk ...

随机推荐

  1. Sql Server中使用特定字符分割字符串

    在T-SQL中我们经常批量操作时都会对字符串进行拆分,可是SQL Server中却没有自带Split函数,所以要自己来实现了.这里将字符串分割以table形式输出 语法如下: SET ANSI_NUL ...

  2. HBase表的数据导出和导入

    1. 表数据导出 hbase org.apache.hadoop.hbase.mapreduce.Export test file:///home/hadoop/test (导入到本地) hbase ...

  3. JVM强引用、软引用、弱引用、虚引用、终结器引用垃圾回收行为总结

    JVM引用 我们希望能描述这样一类对象: 当内存空间还足够时,则能保留在内存中:如果内存空间在进行垃圾收集后还是很紧张,则可以抛弃这些对象. -[既偏门又非常高频的面试题]强引用.软引用.弱引用.虚引 ...

  4. JVM内存溢出与内存泄漏

    内存溢出与内存泄漏 内存溢出相对于内存泄漏来说,尽管更容易被理解,但是同样的,内存溢出也是引发程序崩溃的罪魁祸首之一. 由于GC一直在发展,所有一般情况下,除非应用程序占用的内存增长速度非常快,造成垃 ...

  5. mariadb 数据库集群配置

    mariadb集群配置(主从和多主)   mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是 ...

  6. (数据科学学习手札95)elyra——jupyter lab最强插件

    本文示例文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 jupyter lab是我最喜欢的编辑器,在过往 ...

  7. 基于python的extract_msg模块提取outlook邮箱保存的msg文件中的附件

    笔者保存了一些outlook邮箱中保存的一些msg格式的邮件文件,现需要将其中的附件提取出来, 当然直接在outlook中就可以另存附件,但outlook默认是不支持批量提取邮件中的附件的 思考过几种 ...

  8. Java Web学习(四)http协议

    文章更新时间:2020/07/24 一.概念 定义 HTTP:超文本传输协议,是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程. HTTP协议:用于定义客户端与 ...

  9. 能否使用GHDL+GTKWave代替Quartus ii (续——vhdl_testbench_cli)

    vhdl_testbench_cli项目介绍 这是我放在gitee上的一个项目. 项目是用于Mac系统下生成vhdl testbench的工具. 主要就是续着这篇文章<能否使用GHDL+GTKW ...

  10. python ---倒酒!!

    #!/usr/bin/env python3# -*- coding: utf-8 -*-import numbersimport numpyimport math'''三个容器分别为12升.8升.5 ...