使用QWidget设置PyQt5窗口属性,包括标题、大小、位置、图标、样式和行为。通过setWindowTitle、resize、move、setWindowIcon等方法配置窗口基本信息,利用setStyleSheet定义外观风格,并可通过setWindowFlags、setWindowOpacity等控制窗口行为特性,如置顶显示和透明度,适用于基础GUI开发需求。

在使用 PyQt5 创建图形界面时,对窗体进行设置是基础操作。你可以通过 QWidget 或其子类(如 QMainWindow、QDialog 等)来配置窗口的大小、位置、标题、图标、背景等属性。
设置窗口基本属性
创建一个主窗口后,可以通过以下方法设置常见属性:
- setWindowTitle("标题"):设置窗口标题栏文字
- resize(800, 600):设置窗口初始宽高(像素)
- move(100, 100):设置窗口在屏幕上的位置(x, y)
- setWindowIcon(QIcon("icon.png")):设置窗口图标(需导入 QIcon)
- setFixedSize(800, 600):固定窗口大小,禁止拉伸
- setMaximumSize() / setMinimumSize():限制窗口最大或最小尺寸
示例代码:
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon
<p>app = QApplication(sys.argv)</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/00968c3c2c15" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">Python免费学习笔记(深入)</a>”;</p><p>window = QWidget()
window.setWindowTitle("我的PyQt5窗口")
window.resize(800, 600)
window.move(200, 100)
window.setWindowIcon(QIcon("favicon.ico")) # 图标文件需存在</p><h1>window.setFixedSize(800, 600) # 可选:固定大小</h1><p>window.show()</p><p>sys.exit(app.exec_())</p><div class="aritcle_card flexRow">
<div class="artcardd flexRow">
<a class="aritcle_card_img" href="/ai/2031" title="OpenJobs AI"><img
src="https://img.php.cn/upload/ai_manual/000/000/000/175680025217032.png" alt="OpenJobs AI" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a href="/ai/2031" title="OpenJobs AI">OpenJobs AI</a>
<p>AI驱动的职位搜索推荐平台</p>
</div>
<a href="/ai/2031" title="OpenJobs AI" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
</div>
</div>设置窗口样式与外观
可以使用 setStyleSheet() 方法为窗口设置 CSS 风格的样式,比如背景颜色、字体等。
- setStyleSheet("background-color: #f0f0f0; font-size: 14px;"):设置整体样式
- 支持丰富的 Qt 支持的 CSS 属性,可用于美化界面
示例:
window.setStyleSheet("""
background-color: #eef;
font-family: Microsoft YaHei;
border: 1px solid #ccc;
""")
控制窗口行为
除了外观,还可以设置窗口的行为特性:
- setWindowFlags():设置窗口标志,例如隐藏标题栏、置顶显示等
- setWindowOpacity(0.9):设置透明度(0.0 ~ 1.0)
- setFocusPolicy():设置焦点策略
例如让窗口始终置顶:
from PyQt5.QtCore import Qt window.setWindowFlags(Qt.WindowStaysOnTopHint)
基本上就这些常用设置。根据实际需求组合使用即可,不复杂但容易忽略细节比如图标路径或坐标系统。







