亚洲国产欧美一区二区三区f,亚洲A∨精品永久无码青草网,亚洲 暴爽 av人人爽日日碰,亚洲AV永久无码精心天堂久久_无码

系統城裝機大師 - 唯一官網:www.outletmksalestore.com!

當前位置:首頁 > 腳本中心 > 其它 > 詳細頁面

python GUI庫圖形界面開發之PyQt5動態(可拖動控件大小)布局控件QSplitter詳細使用方法與實例

時間:2020-03-06來源:電腦系統城作者:電腦系統城

PyQt5動態(可拖動控件大小)布局控件QSplitter簡介

PyQt還提供了特殊的布局管理器QSplitter。它可以動態地拖動子控件之間的邊界,算是一個動態的布局管理器,QSplitter允許用戶拖動子控件的邊界控制子控件的大小,并提供一個處理拖曳子控件的控制器

在QSplitter對象中各子控件默認是橫向布局的,可以使用Qt,Vertical進行垂直布局

QSplitter類中常用的方法

方法 描述
addWidget() 將小控件添加到QSplitter管理器的布局中
indexOf() 返回小控件在QSplitter管理器中的索引
insertWidget() 根據指定的索引將一個控件插入到QSplitter管理器中
setOrientation() 設置布局的方向
  Qt.Horizontal:水平方向
  Qt.Vertical:垂直方向
setSizes() 設置控件的初始大小
count() 返回小控件在QSplitter管理器中的數量

QSplitter的使用實例


 
  1. import sys
  2. from PyQt5.QtWidgets import *
  3. from PyQt5.QtCore import *
  4. from PyQt5.QtGui import *
  5. class SplitterExample(QWidget):
  6. def __init__(self):
  7. super(SplitterExample, self).__init__()
  8. self.initUI()
  9. def initUI( self ):
  10. #設置全局布局為水平布局,設置標題與初始大小窗口
  11. hbox=QHBoxLayout()
  12. self.setWindowTitle("QSplitter例子")
  13. self.setGeometry(300,300,300,200)
  14. #實例化QFrame控件
  15. topLeft=QFrame()
  16. topLeft.setFrameShape(QFrame.StyledPanel)
  17. bottom=QFrame()
  18. bottom.setFrameShape(QFrame.StyledPanel)
  19. #實例化QSplitter控件并設置初始為水平方向布局
  20. splitter1=QSplitter(Qt.Horizontal)
  21. textedit=QTextEdit()
  22. #向Splitter內添加控件。并設置游戲的初始大小
  23. splitter1.addWidget(topLeft)
  24. splitter1.addWidget(textedit)
  25. splitter1.setSizes([100,200])
  26. #實例化Splitter管理器,添加控件到其中,設置垂直方向
  27. splitter2=QSplitter(Qt.Vertical)
  28. splitter2.addWidget(splitter1)
  29. splitter2.addWidget(bottom)
  30. #設置窗體全局布局以及子布局的添加
  31. hbox.addWidget(splitter2)
  32. self.setLayout(hbox)
  33. if __name__ == '__main__':
  34. app=QApplication(sys.argv)
  35. demo=SplitterExample()
  36. demo.show()
  37. sys.exit(app.exec_())

運行效果如下

python GUI庫圖形界面開發之PyQt5動態(可拖動控件大小)布局控件QSplitter詳細使用方法與實例

代碼分析

在這個例子中,顯示了使用兩個QSplitter組織的兩個QFame控件,其中第一個QSplitter對象包含一個QFrame對象和QTextEdit對象,并按照水平方向進行布局


 
  1. splitter1=QSplitter(Qt.Horizontal)
  2. textedit=QTextEdit()
  3. #向Splitter內添加控件。并設置游戲的初始大小
  4. splitter1.addWidget(topLeft)
  5. splitter1.addWidget(textedit)
  6. splitter1.setSizes([100,200])

第二個QSplitter對象添加第一個QSplitter對象和一個QFrame對象,并按照垂直布局


 
  1. splitter2=QSplitter(Qt.Vertical)
  2. splitter2.addWidget(splitter1)
  3. splitter2.addWidget(bottom)

本文主要介紹了PyQt5動態(可拖動控件大小)布局控件QSplitter詳細使用方法與實例,更多關于PyQt5布局控件的使用知識請查看下面的相關鏈接

分享到:

相關信息

系統教程欄目

欄目熱門教程

人氣教程排行

站長推薦

熱門系統下載

亚洲国产欧美一区二区三区f,亚洲A∨精品永久无码青草网,亚洲 暴爽 av人人爽日日碰,亚洲AV永久无码精心天堂久久_无码 日本少妇又色又爽又高潮