ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python GUI教程(一):在PyQt5中创建第一个GUI图形用户界面(转载)

2021-09-09 15:04:55  阅读:235  来源: 互联网

标签:Python win GUI sys QWidget import app 图形用户界面


# coding:utf-8
import sys
from PyQt5.QtWidgets import *

if __name__ == '__main__':

    app = QApplication(sys.argv)

    win = QWidget()

    win.resize(450, 150)
    win.move(300, 300)
    win.setWindowTitle('州的先生Zmister.com GUI教程')

    win.show()

    sys.exit(app.exec())
View Code

 

一、第一个GUI

首先,我们使用pyqt5的窗口小部件创建一个最基本的GUI:

# coding:utf-8

import sys
from PyQt5.QtWidgets import *

app = QApplication(sys.argv)
win = QWidget()
win.show()

sys.exit(app.exec_())

运行程序,自动生成一个什么都没有的原始窗口:

在上面的程序中,我们首先引用了需要的模块:sys和pyqt5的QtWidgets模块:

import sys
from PyQt5.QtWidgets import *

sys模块提供了访问由解释器使用或维护的变量和与解释器进行交互的函数;
QtWidgets模块包含提供一组UI元素以创建经典桌面式用户界面的方法,可以让我们很方便地创建窗口对象。

接着,我们实例化了一个应用程序对象QApplication(),在PyQt5中,每个应用程序都必须实例化一个QApplication():

app = QApplication(sys.argv)

然后我们创建了一个QWidget()对象,它是pyqt5中所有的图形用户界面的基类:

win = QWidget()

再是使用QWidget对象的show()方法将创建的窗口显示出来:

win.show()

最后,我们调用应用程序对象的exec_()方法来运行程序的主循环,并使用sys.exit()方法确保程序能够完美的退出。

sys.exit(app.exec_())

二、设置窗口标题、大小和位置

上面创建的GUI程序只是一个空的窗口,我们接下来向里面添加点东西,比如设置一个标题、更改窗口的大小等:

# coding:utf-8
import sys
from PyQt5.QtWidgets import *

app = QApplication(sys.argv)

win = QWidget()
win.resize(450,150)
win.move(0,300)
win.setWindowTitle('州的先生Zmister.com GUI教程')
win.show()

sys.exit(app.exec())

在这个程序中,我们设置了以下三点:

  • 使用QWidget()对象的resize()方法设置窗口的大小为450*150;
  • 使用QWidget()对象的move()方法,将窗口移动到显示器上x=0,y=300的位置;
  • 使用QWidget()对象的setWindowTitle()方法,为我们的窗口设置了一个标题。

运行程序,得到下面的窗口:

  文章版权所有:,转载必须保留出处及原文链接

  原文地址:https://zmister.com/archives/145.html

标签:Python,win,GUI,sys,QWidget,import,app,图形用户界面
来源: https://www.cnblogs.com/zeliangzhang/p/15247061.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有