源码讲解PyQt5的文本框与网格布局

网格布局其中的每一个按钮对应到一个网格,其实我们的窗口部件可以占据多个网格,我们可以据此做一个类似文本输入的窗口。下面我们就用源码来学习PyQt的文本框与网格布局。

先上源代码:

import sysfrom PyQt5.QtWidgets import QApplication, QWidget, QLabel, QGridLayout, QTextEdit, QLineEdit

class exp(QWidget):

def __init__(self):

super().__init__()

self.initUI()

def initUI(self):

title = QLabel(’Title’)

author = QLabel(’Author’)

review = QLabel(’Review’)

titleEdit = QLineEdit()

authorEdit = QLineEdit()

reviewEdit = QTextEdit()

grid = QGridLayout()

grid.setSpacing(10)

grid.addWidget(title, 1, 0)

grid.addWidget(titleEdit, 1, 1)

grid.addWidget(author, 2, 0)

grid.addWidget(authorEdit, 2, 1)

grid.addWidget(review, 3, 0)

grid.addWidget(reviewEdit, 3, 1, 5, 1)

self.setGeometry(300, 300, 400, 400)

self.setLayout(grid)

self.setWindowTitle(’review’)

self.show()

if __name__ == ’__main__’:

app = QApplication(sys.argv)

ex = exp()

sys.exit(app.exec_())

以上的代码创建了三个QLabel部件,两个QLineEdit部件和一个QTextEdit部件共六个部件,通过QGridLayout将这六个部件进行排列。

grid = QGridLayout()

grid.setSpacing(10)

以上代码创建了一个网格布局,setSpacing(10)设置了网格间的距离为10。

grid.addWidget(reviewEdit, 3, 1, 5, 1)

之前的5个部件都是占据一个网格,现在reviewEdit占据了(3,1),(4,1),(5,1)共3个网格。

原文来自:简书/链球选手

时间: 2024-10-10 17:59:04

源码讲解PyQt5的文本框与网格布局的相关文章

cocos2D-X源码讲解之从cocos2D-X学习OpenGL(1)----cocos2D-X渲染结构

 个人原创,欢迎转载,转载请注明原文地址http://blog.csdn.net/bill_man 从本篇文章开始,将分析cocos2D-X 3.0源代码,第一部分是从cocos2D-X学习OpenGL,也就是分析cocos2D-X 3.0的渲染代码,本篇首先介绍cocos2D-X 3.0的渲染结构,使用的是3.0正式版. void DisplayLinkDirector::mainLoop() { if (_purgeDirectorInNextLoop) { //只有一种情况会调用到这里来,

源码讲解ActionBar的各种用法

1. Navigation Drawer 许多应用程序都使用了Navigation Drawer,如网易邮箱客户端.该控件位于 android.support.v4.widget.DrawerLayout ,用法如下,点击下载源码: <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/draw

深入Redis内部-Redis 源码讲解(转)

Redis作为 NoSQL 数据库的杰出代表,一直广受关注,其轻量级的敏捷架构,向来有存储中的瑞士军刀之称.下面推荐的一篇文章,从源码的角度讲解了Redis 的整个工作流程,是了解 Redis 流程的绝佳文章.英文的,想搞懂还是要花些时间的 原文链接:Redis: under the hood 目录: Startup Beginning global server state initialization Setting up command table Loading config file

游戏源码讲解

新建立了一个QQ群,用来讲解一些知名网络游戏源码,如游戏架构.网络通信.配置读写.逻辑管理.UI管理等,适合对游戏开发感兴趣的在校学生.刚从业的新手,玩服的勿加. 手游:暗黑战神.龙骑战歌 端游:江山美人(2.5D 回合制MMORPG) QQ:773495257 QQ群:557660018 付费加入:500RMB/人

Qt5.5.0使用mysql编写小软件源码讲解---顾客信息登记表

一个个人觉得比较简单小巧的软件. 下面就如何编写如何发布打包来介绍一下吧! 先下载mysql的库文件链接:http://files.cnblogs.com/files/xiaobo-Linux/mysql.zip 把两个文件放入 Qt目录\Qt5.5.0\5.5\mingw492_32\bin文件夹下直接粘贴(路径根据自己的设置) 也可以放到原来工程代码中,头文件用双引号引出即可. <!--小波Linux QQ463431476 cnblogs http://www.cnblogs.com/xi

laravel5源码讲解整理

来源:http://yuez.me/laravel-yuan-ma-jie-du/?utm_source=tuicool&utm_medium=referral 目录 入口文件 index.php Illuminate\Foundation\Application 类 注入所有基础 Service Provider 入口文件 index.php 一个基于Laravel的应用,当WEB服务器接受到来自外部的请求后,会将这个这个请求解析到 应用根目录的 public/index.php 中. Lar

java里面的FutureTask简单使用(配合源码讲解)

最近无意间看到了关于AsyncTask的一篇分析文章AsyncTask源码分析,记得很早之前还看过郭神博客里面分析了AsyncTask源码.去查看AsyncTask源码会发现里面使用了FutureTask在它自己的构造函数里面,我的sdk是android-23里面查看的. /** * Creates a new asynchronous task. This constructor must be invoked on the UI thread. */ public AsyncTask() {

jdk1.8 HashMap源码讲解

1. 开篇名义 jdk1.8中hashMap发生了一些改变,在之前的版本中hsahMap的组成是数组+链表的形式体现,而在1.8中则改为数组+链表+红黑树的形式实现,通过下面两张图来对比一下二者的不同.                   jdk1.8之前的hashMap结构图,基本对象为Entry<k,v>                               jdk1.8的hashMap结构图,基本对象改为了Node<k,v> 注意:无论Entry<key,valu

dyld方式遍历模块源码讲解

mac ios上遍历模块的有几种方式(其实不叫遍历模块,应该叫做遍历进程内所有的macho可执行文件,看完就知道为什么了).这里只看dyld方式遍历的,dyld大家都知道这个是水果支持动态链接启动macho文件用的,也就当你要依赖其它库时dyld会给也把这些坑填了,遍历模块代码是:https://blog.51cto.com/haidragon/2164203用到的函数有: int32_t nModNums= _dyld_image_count(); //获取所有image pModSlide