PySide2基礎篇(五)——QDialog運用

PySide2基礎篇(五)——QDialog運用

前言:
閱讀這篇文章我能學到什麼?
  對話框是設計GUI的基礎,這篇文章介紹QDialog的簡單運用,請閱讀這篇文章。

——如果你覺得這是一篇不錯的博文,希望你能給一個小小的贊,感謝您的支持。

1 創建一個對話框

  PySide2提供了QDialog用於創建對話框,關於對話框可以對其設置很多屬性,比如座標、標題、圖標、大小、顏色等。
  代碼示例:

from PySide2.QtWidgets import QApplication, QDialog
from PySide2.QtGui import QIcon

app = QApplication([])
Icon = QIcon(".\png\PNG.png")
Dialog = QDialog()
Dialog.setWindowTitle("對話框標題")
Dialog.setWindowIcon(Icon)
Dialog.setGeometry(500, 200, 200, 100)               #x, y, 長,寬
Dialog.setStyleSheet("background-color:green")       #設置對話框背景色

Dialog.show()
app.exec_()

  運行結果:
在這裏插入圖片描述

2 對話框的其他功能設置

2.1 對話框設置佈局和添加控件

  對話框內可以放置很多控件,比如標籤控件、編輯控件、按鈕控件等,對於這些控件的擺放,PySide2提供了兩種自動排布的簡便風格,即水平排布和垂直排布。
  代碼示例:

from PySide2.QtWidgets import QApplication, QDialog, QPushButton, QVBoxLayout, QLineEdit

app = QApplication([])
PushButton = QPushButton("初始文本")
LineEdit = QLineEdit("初始文本")

VBoxLayout = QVBoxLayout()                  #垂直佈局
VBoxLayout.addWidget(LineEdit)              #佈局的順序與添加的順序有關
VBoxLayout.addWidget(PushButton)

Dialog = QDialog()
Dialog.setLayout(VBoxLayout)

Dialog.show()
app.exec_()

  運行結果:
在這裏插入圖片描述
  再來嘗試水平佈局。
  代碼示例:

from PySide2.QtWidgets import QApplication, QDialog, QPushButton, QHBoxLayout, QLineEdit

app = QApplication([])
PushButton = QPushButton("初始文本")
LineEdit = QLineEdit("初始文本")

HBoxLayout = QHBoxLayout()                  #垂直佈局
HBoxLayout.addWidget(LineEdit)              #佈局的順序與添加的順序有關
HBoxLayout.addWidget(PushButton)

Dialog = QDialog()
Dialog.setLayout(HBoxLayout)

Dialog.show()
app.exec_()

  運行結果:
在這裏插入圖片描述

2.2 失能對話框(置灰)

  被失能的對話框其上所有的控件也相當於失能,不能繼續進行交互。
  代碼示例:

from PySide2.QtWidgets import QApplication, QDialog, QPushButton, QVBoxLayout, QLineEdit

app = QApplication([])
PushButton = QPushButton("初始文本")
LineEdit = QLineEdit("初始文本")

VBoxLayout = QVBoxLayout()                  #垂直佈局
VBoxLayout.addWidget(LineEdit)              #佈局的順序與添加的順序有關
VBoxLayout.addWidget(PushButton)

Dialog = QDialog()
Dialog.setLayout(VBoxLayout)
Dialog.setEnabled(False)

Dialog.show()
app.exec_()

  運行結果:
在這裏插入圖片描述

2.3 文件對話框

  在PySide2裏文件對話框也被看作是一個控件。
  代碼示例:

from PySide2.QtWidgets import QApplication, QDialog, QFileDialog, QHBoxLayout

app = QApplication([])

FileDialog = QFileDialog()

HBoxLayout = QHBoxLayout()
HBoxLayout.addWidget(FileDialog)

Dialog = QDialog()
Dialog.setGeometry(700, 400, 800, 400)
Dialog.setLayout(HBoxLayout)

Dialog.show()
app.exec_()

  運行結果:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章