首页 > 其他分享 >pyqt入门

pyqt入门

时间:2022-09-28 16:58:15浏览次数:48  
标签:__ 控件 widget 入门 对话框 self pyqt main

  第一次接触pyqt是在20年刚毕业的时候,时隔两年,恰逢闲暇,正好回过头来对这个模块的知识进行一个整理,不会做系统化的整理,我打算可能会围绕之前做过的小工具对其涉及到的控件、信号和槽等知识进行简单的回忆。后面工作如果再涉及或者想到其他的,会再回来更新完善。

  pyqt5:同前面整理的kivy一样,同属于GUI开发框架的范畴,不同的是,pyqt用于桌面应用程序的开发(还有pyqt6,有兴趣还可以注意一下,)

  本篇主要安装一下三方库和三方工具(Qtdesigner,纯手写布局的话可以不用他)等

1、安装三方库、设计器

  

 

 

   

 

 

 2、pycharm配置(不需要设计器就可以不配置,pyuic是将设计器生成ui文件转换成py文件)

  

 

 

   

 

 

 3、要点总结

  3.1、窗口
    QWidget(所有控件的基类)
    QMainwindow(带有菜单栏、工具栏、状态栏的主窗口)
    QDialog(对话框窗口)
  3.2、布局
    线性布局:
      水平布局
      垂直布局
    网格布局
    表单布局
  3.3、常用控件
    文本类控件:
      标签
      单行文本
      多行文本
      整数数字选择框
      小数数字选择框
    按钮类控件:
      Pushbutton
      toolbutton
      Radiobutton
      Checkbutton
    列表类控件:
      ComboBox
      listwidget
    容器类控件:
      GroupBox
      Tabwidget
      toolBox
      CommandlinkBox
  3.4、高级控件
    TreeView、TableView、TreeWidget、TableWidget
    Frame
    SpaceItem
  3.5、对话框
    消息对话框
    文件对话框
    输入对话框
    字体、颜色对话框
  3.6、事件驱动
    传递event参数

  3.7、信号和槽

  3.8、M/V结构

4、窥探

 1 import sys
 2 from PyQt5.QtWidgets import *
 3 
 4 
 5 class TestUi(QMainWindow):
 6     def __init__(self):
 7         super(TestUi, self).__init__()
 8         self.init_widget()
 9 
10     def init_widget(self):
11         self.setFixedSize(500, 300)
12         self.setWindowTitle("测试")
13         # self.layout = QVBoxLayout()
14         self.main_widget = QWidget()
15         self.main_layout = QHBoxLayout()
16         # self.main_widget.setFixedSize(200, 200)
17         self.main_widget.setLayout(self.main_layout)
18         self.queding = QPushButton("确定")
19         self.chaxun = QPushButton("查询")
20         self.setCentralWidget(self.main_widget)
21         self.main_layout.addWidget(self.queding)
22         self.main_layout.addWidget(self.chaxun)
23 
24 
25 if __name__ == "__main__":
26     app = QApplication(sys.argv)
27     ui = TestUi()
28     ui.show()
29     sys.exit(app.exec_())

运行界面显示:

 

标签:__,控件,widget,入门,对话框,self,pyqt,main
From: https://www.cnblogs.com/shixiaogu/p/16738675.html

相关文章

  • 8.交换技术入门
    二层交换基础园区网分层结构二层交换机的主要功能Addresslearning:地址学习(mac地址)Forward/filterdecision:转发/筛选决策Loopavoidance:防环机制MAC地址二层数......
  • kafka 从入门到了解
    点击上方蓝字关注我们!什么是kafkaApacheKafka是Apache软件基金会的开源的流处理平台,该平台提供了消息的订阅与发布的消息队列,一般用作系统间解耦、异步通信、削峰填谷等作......
  • vite.config.js配置入门详解
    一,搭建vite项目兼容性注意:Vite需要 Node.js 版本14.18+,16+。然而,有些模板需要依赖更高的Node版本才能正常运行,当你的包管理器发出警告时,请注意升级你的Node版......
  • 网上关于SAT简单入门的介绍
    网上关于SAT简单入门的介绍1.基于QT实现的数独游戏DPLL的SAT求解器设计基于sat的二进制数独游戏求解程序课程设计https://download.csdn.net2.SATandSMThttps://b......
  • vite入门介绍
    vite的中文镜像官网:https://vitejs.cn/vite3-cn/guide/why.html;vite的英文官网:https://vitejs.dev/;vite的中文镜像官网:https://cn.vitejs.dev/;一,什么是vite?vite是......
  • Java入门基础知识
    概念关键字:具有特殊用途的单词。保留字:未使用的关键字(gotoconst)。直接量:不可用作标识符(turefalsenull)。一、JAVA运行机制Java程序的运行必须经过编写、编译、运......
  • QT界面开发入门7 — 菜单栏没有转到槽
    问题描述信号与槽是QT里比较重要的概念(也不知道第一次翻译成槽的人是怎么想的),一般在控件中右键就可以转到槽。在弹出的菜单中可以该选择各种信号(事件)然后,在菜单栏及其......
  • python爬虫入门教程:爬取网页图片
    在现在这个信息爆炸的时代,要想高效的获取数据,爬虫是非常好用的。而用python做爬虫也十分简单方便,下面通过一个简单的小爬虫程序来看一看写爬虫的基本过程: 首先是要用到......
  • 线段树学习笔记(入门)
    目录前言线段树基础2.1定义2.2区间操作和懒标记2.3一些例题1.前言应老师要求,来写一篇关于线段树的学习笔记2.线段树基础2.1定义线段树是一种二叉搜索树,与......
  • 【保姆级Python入门教程】马哥手把手带你安装Python、安装Pycharm、环境配置教程
    您好,我是@马哥python说,一枚10年程序猿。我的社群中小白越来越多,咨询讨论的问题很多集中在python安装上,故输出此文,希望对大家起步有帮助。下面开始,先安装Python,再安装py......