PyQt5【入门-窗口】
一.窗口
#设置窗口标题
setWindowTitle("标题") #设置窗口坐标和大小
setGeometry(0,0,800,600)
"""
项目模块: PyQt5
项目内容:窗口 """
#导入系统参数
import sys #导入PyQt5
from PyQt5.QtGui import *
from PyQt5.QtWidgets import * #定义类
class MyWidget(QWidget): def __init__(self): #类的初始化 super().__init__() #super()继承 self.setGeometry(,,,) #设置坐标: 大小800 self.setWindowTitle('窗口标题') #类的实例化
myapp = QApplication(sys.argv) mywidget = MyWidget() mywidget.show() sys.exit(myapp.exec_())
二.界面加上图标
"""
项目模块: PyQt5
项目内容:窗口 """
#导入系统参数
import sys #导入PyQt5
from PyQt5.QtGui import *
from PyQt5.QtWidgets import * #定义类
class MyWidget(QWidget): def __init__(self): #类的初始化 super().__init__() #super()继承 self.setGeometry(0,0,800,600) #设置坐标: 0 0 大小800 600 self.setWindowTitle('窗口标题') self.setWindowIcon(QIcon('i.ico')) #添加图标 #类的实例化
myapp = QApplication(sys.argv) mywidget = MyWidget() mywidget.show() sys.exit(myapp.exec_())
三.弹出提示信息
"""
项目模块: PyQt5
项目内容:窗口 """
#导入系统参数
import sys #导入PyQt5
from PyQt5.QtGui import *
from PyQt5.QtWidgets import * #定义类
class MyWidget(QWidget): def __init__(self): #类的初始化 super().__init__() #super()继承 self.setGeometry(0,0,800,600) #设置坐标: 0 0 大小800 600 self.setWindowTitle('窗口标题') self.setWindowIcon(QIcon('i.ico')) #设置提示信息
self.setToolTip("这是提示!!") QToolTip.setFont(QFont('微软雅黑',10)) #类的实例化
myapp = QApplication(sys.argv) mywidget = MyWidget() mywidget.show() sys.exit(myapp.exec_())
四.关闭窗口询问
"""
项目模块: PyQt5
项目内容:窗口 """
#导入系统参数
import sys #导入PyQt5
from PyQt5.QtGui import *
from PyQt5.QtWidgets import * #定义类
class MyWidget(QWidget): def __init__(self): #类的初始化 super().__init__() #super()继承 self.setGeometry(0,0,800,600) #设置坐标: 0 0 大小800 600 self.setWindowTitle('窗口标题') self.setWindowIcon(QIcon('i.ico')) def closeEvent(self,event): #重新定义 closeEvent replay = QMessageBox.question(self,'关闭',
"你确定要退出么?",
QMessageBox.Yes,
QMessageBox.No)
if replay == QMessageBox.Yes: event.accept()
else:
event.ignore() #类的实例化
myapp = QApplication(sys.argv) mywidget = MyWidget() mywidget.show() sys.exit(myapp.exec_())
五.屏幕居中显示
"""
项目模块: PyQt5
项目内容:窗口 """
#导入系统参数
import sys #导入PyQt5
from PyQt5.QtGui import *
from PyQt5.QtWidgets import * #定义类
class MyWidget(QWidget): def __init__(self): #类的初始化 super().__init__() #super()继承 self.setGeometry(0,0,800,600) #设置坐标: 0 0 大小800 600 self.resize(200,200) self.setWindowTitle('窗口标题') self.setWindowIcon(QIcon('i.ico')) self.center() def closeEvent(self,event): #重新定义 closeEvent replay = QMessageBox.question(self,'关闭',
"你确定要退出么?",
QMessageBox.Yes,
QMessageBox.No)
if replay == QMessageBox.Yes: event.accept()
else:
event.ignore() def center(self): #获取屏幕的大小
screen = QDesktopWidget().screenGeometry()
#自身的大小(包括宽和高)
size = self.geometry()
self.move((screen.width() - size.width())/2,\
(screen.height() - size.height())/2) #类的实例化
myapp = QApplication(sys.argv) mywidget = MyWidget() mywidget.show() sys.exit(myapp.exec_())
六.状态栏
"""
项目模块: PyQt5
项目内容:窗口 """
#导入系统参数
import sys #导入PyQt5
from PyQt5.QtGui import *
from PyQt5.QtWidgets import * #定义类
class MyWidget(QMainWindow): def __init__(self): #类的初始化 super().__init__() #super()继承 self.setGeometry(0,0,800,600) #设置坐标: 0 0 大小800 600 self.resize(300,300) self.setWindowTitle('窗口标题') self.setWindowIcon(QIcon('i.ico')) self.center() self.status_bar() def closeEvent(self,event): #重新定义 closeEvent replay = QMessageBox.question(self,'关闭',
"你确定要退出么?",
QMessageBox.Yes,
QMessageBox.No)
if replay == QMessageBox.Yes: event.accept()
else:
event.ignore() def center(self): #获取屏幕的大小
screen = QDesktopWidget().screenGeometry()
#自身的大小(包括宽和高)
size = self.geometry()
self.move((screen.width() - size.width())/2,\
(screen.height() - size.height())/2) def status_bar(self): self.statusBar().showMessage("程序已准备就绪...") #类的实例化
myapp = QApplication(sys.argv) mywidget = MyWidget() mywidget.show() sys.exit(myapp.exec_())
七.菜单栏
"""
项目模块: PyQt5
项目内容:窗口 """
#导入系统参数
import sys #导入PyQt5
from PyQt5.QtGui import *
from PyQt5.QtWidgets import * #定义类
class MyWidget(QMainWindow): valueA = "about"
valueB = "aboutqt" def __init__(self): #类的初始化 super().__init__() #super()继承 self.initUI() def initUI(self):
self.setGeometry(0,0,800,600) #设置坐标: 0 0 大小800 600 self.resize(300,300) self.setWindowTitle('窗口标题') self.setWindowIcon(QIcon('i.ico')) self.center() self.menu_bar() def menu_bar(self): #=================编程语言=========================
lauguage_machine = self.menuBar().addMenu("编程语言")
lauguage_C = lauguage_machine.addAction("C/C++")
lauguage_Python = lauguage_machine.addAction("Python")
lauguage_C# = lauguage_machine.addMenu("C#")
lauguage_PHP = lauguage_machine.addAction("PHP")
lauguage_SQL = lauguage_machine.addMenu("SQL")
#SQL添加分支
relative_SQL = lauguage_SQL.addMenu("关系型数据库")
NoSQL = lauguage_SQL.addMenu("非关系型数据库")
#关系型数据库
SQL_Oracle = relative_SQL.addAction("Oracle")
SQL_DB2 = relative_SQL.addAction("DB2")
SQL_MySQL = relative_SQL.addAction("MySQL")
SQL_Access = relative_SQL.addAction("Access")
SQL_Server = relative_SQL.addAction("SQL Server")
SQL_Sybase = relative_SQL.addAction("Sybase")
SQL_vft = relative_SQL.addAction("vfp")
SQL_INGRES = relative_SQL.addAction("INGRES")
#非关系型数据库
SQL_SQL = NoSQL.addAction("SQL")
SQL_Redis = NoSQL.addAction("Redis")
SQL_MongoDB = NoSQL.addAction("MongoDB")
SQL_SQLite = NoSQL.addAction("SQLite")
#网页
lauguag_Web = lauguage_machine.addMenu("网页")
lauguag_HTML = lauguag_Web.addAction("HTML")
lauguag_CSS = lauguag_Web.addAction("CSS")
lauguag_JavaScript = lauguag_Web.addAction("JavaScript") #=================爬虫=========================
menu_control = self.menuBar().addMenu('爬虫') act_quit = menu_control.addAction('quit') act_quit.triggered.connect(self.close) #==================Web===================
menu_help = self.menuBar().addMenu('Web') act_about = menu_help.addAction('about') act_about.triggered.connect(self.status) act_aboutqt = menu_help.addAction('aboutqt') act_aboutqt.triggered.connect(self.status_bar) def closeEvent(self,event): #重新定义 closeEvent replay = QMessageBox.question(self,'关闭',
"你确定要退出么?",
QMessageBox.Yes,
QMessageBox.No)
if replay == QMessageBox.Yes: event.accept()
else:
event.ignore() def center(self): #获取屏幕的大小
screen = QDesktopWidget().screenGeometry()
#自身的大小(包括宽和高)
size = self.geometry()
self.move((screen.width() - size.width())/2,\
(screen.height() - size.height())/2) def status_bar(self): self.statusBar().showMessage("打开") def status(self): self.statusBar().showMessage("关闭") #类的实例化
myapp = QApplication(sys.argv) mywidget = MyWidget() mywidget.show() sys.exit(myapp.exec_())
PyQt5【入门-窗口】的更多相关文章
- PyQt5之窗口类型
[TOC] 注:原创不易,转载请务必注明原作者和出处,感谢支持! 一 写在开头 1.1 本文内容 本文的主要内容:PyQt中的窗口部件:QMainWindow,QWidget,QDialog. 上述三 ...
- PyQt5 入门
换了VSCODE开发,感觉比sublime好点,可能是由于第三版老弹框烦人吧.VSCODE看着也挺好看的. 学习 PyQt5 中文教程 0. 安装完之后错误 pip 安装了 pyqt5 from Py ...
- PyQt5入门
PyQt5 是用来创建Python GUI应用程序的工具包.作为一个跨平台的工具包,PyQt可以在所有主流操作系统上运行(Unix,Windows,Mac). 本文描述Windows系统下如何安装Py ...
- pyqt5实现窗口跳转并关闭上一个窗口
关键在于要定义一个关闭窗体的函数colsewin() 然后将按键与该函数连接(connect)在一起即可 import sys from PyQt5.QtWidgets import QMainWin ...
- pyqt5 设置窗口按钮等可用与不可用
setEnabled(True) 设置窗口或者按钮可用,Flase不可用
- PyQt5入门教程
原文链接:https://blog.csdn.net/azuremouse/article/details/90338961 问题记录: 1. pip 安装时速度太慢, 需要使用国内镜像 pip in ...
- 推荐:pyqt5入门教程
版权声明:本文为CSDN博主「AzureMouse」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/azure ...
- Win10 UI入门窗口由默认500px to 320px
https://code.msdn.microsoft.com/Layout-for-windows-that-ba648e1c/ https://msdn.microsoft.com/library ...
- Python3使用PyQt5制作简单的画板/手写板
0.目录 1.前言 2.简单的画板1.0 在定点和移动中的鼠标所在处画一条线 3.简单的画板2.0 在定点和移动中的鼠标所在处画一条线 并将画过的线都保留在窗体上 4.简单的画板3.0 将按住鼠标后移 ...
随机推荐
- Windbg实用手册
Windbg工作中用的不多,所以命令老是记不住,每次使用都要重新查命令,挺烦. 趁这次培训的机会好好测试和总结了一下,下次再用就方便多了. 在这里一起共享一下,如果有错误,请指正. 基本知识和常用命令 ...
- 套接字名与DNS
2 现代地址解析 首先要说Python套接字最强大的工具之一-------getaddrinfo() 这个函数可能是我们用来将用户指定的主机名和端口号转换为可供套接字方法使用的地址时所需的唯一方法. ...
- Java使用反射实现根据字符串类名及参数创建对象
要根据字符串创建对象,可以使用 Class.forName(String) 方法: 而要新建一个可以指定初始值参数的对象,就必须得使用 getConstructor(Class<T>... ...
- JAVA中的约瑟夫环和猴子王问题
今天在书上(书名< java程序设计经典300例 >李源编著)看了一个有趣的问题,那就是java版的约瑟夫问题,想必大一的小伙伴们早就用c写过了吧 今天我在复习一下 首先问题是这样的n个人 ...
- golang中使用Shutdown特性对http服务进行优雅退出使用总结
golang 程序启动一个 http 服务时,若服务被意外终止或中断,会让现有请求连接突然中断,未处理完成的任务也会出现不可预知的错误,这样即会造成服务硬终止:为了解决硬终止问题我们希望服务中断或退出 ...
- 20200116--python学习第十天
今日内容 1.参数 2.作用域 3.函数嵌套 内容回顾 线上操作系统:centos py2和py3的区别? 每种数据类型,列举你了解的方法. 3 or 9 and 8 字符串的反转 is 和 == 的 ...
- lwip netbuf
lwip2.0.2 netbuf_new——分配netbuf结构体的内存. netbuf_alloc,分配netbuf中pbuf内存(pbuf_alloc中PBUF_RAM类型,包括pbuf结构体和p ...
- k8s pod时区更改
一.问题所在 在K8S里启动一个容器,该容器的设置的时区是UTC0,但是对于很多客户而言,其主机环境并不在UTC0.例如中国客户在UTC8.如果不把容器的时区和主机主机设置为一致,则在查找日志等时候将 ...
- log4j2 springboot 特点与使用方法
Apache Log4j2 is an upgrade to Log4j that provides significant improvements over its predecessor, Lo ...
- 简化MVVM属性设置和修改 - .NET CORE(C#) WPF开发
微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. 简化MVVM属性设置和修改 - .NET CORE(C#) WPF开发 阅读导航 常用类属性设 ...