最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PyQt5 QDockWidget控件應(yīng)用詳解

 更新時間:2020年08月12日 09:58:29   作者:只想整天學(xué)習(xí)  
這篇文章主要介紹了PyQt5 QDockWidget控件應(yīng)用詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

QDockWidget是一個可以??吭赒MainWindow內(nèi)的窗口控件,它可以保持在浮動狀態(tài)或者在指定位置作為子窗口附加到主窗口中,QMainWindow類的主窗口對象保留有一個用于停靠窗口的區(qū)域,這個區(qū)域在控件的中央周圍

QDoCKWidget類中的常用方法

方法 描述
setWidget() 在Dock窗口區(qū)域設(shè)置QWidget
setFloating() 設(shè)置Dock窗口是否可以浮動,如果設(shè)置為True,則表示可以浮動
setAlllowedAreas() 設(shè)置窗口可以??康膮^(qū)域
LeftDockWidgetArea:左側(cè)??繀^(qū)域
RightDockWidgetArea:右側(cè)??繀^(qū)域
TopDockWidgetArea:頂部??繀^(qū)域
BottomDockWidgetArea:底部停靠區(qū)域
NoDockWidgetArea:不顯示W(wǎng)idget
setFearures() 設(shè)置??看翱诘墓δ軐傩?/td>
DockWidgetClosable:可關(guān)閉
DockWidgetMovable:可移動
DockWidgetFloatable:可漂浮
DockWidgetVerticalTitleBar:在左邊顯示垂直的標簽欄
AllDockWidgetFeatures:具有前三種屬性的所有功能
NoDockWidgetFeatures:無法關(guān)閉,不能懸浮,不能移動

實例:QDockWidget的使用

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

class DockDemo(QMainWindow):
  def __init__(self,parent=None):
    super(DockDemo, self).__init__(parent)
    #設(shè)置水平布局
    layout=QHBoxLayout()
    #實例化菜單欄
    bar=self.menuBar()
    #創(chuàng)建主菜單file,在其中添加子菜單
    file=bar.addMenu('File')
    file.addAction('New')
    file.addAction('Save')
    file.addAction('quit')

    #創(chuàng)建QDockWidget窗口(標題,自身窗口)
    self.items=QDockWidget('Dockable',self)

    #實例化列表窗口,添加幾個條目
    self.listWidget=QListWidget()
    self.listWidget.addItem('Item1')
    self.listWidget.addItem('Item2')
    self.listWidget.addItem('Item3')
    self.listWidget.addItem('Item4')

    #在窗口區(qū)域設(shè)置QWidget,添加列表控件
    self.items.setWidget(self.listWidget)

    #設(shè)置dock窗口是否可以浮動,True,運行浮動在外面,自動與主界面脫離,F(xiàn)alse,默認浮動主窗口內(nèi),可以手動脫離
    self.items.setFloating(False)

    #設(shè)置QTextEdit為中央小控件
    self.setCentralWidget(QTextEdit())
    #將窗口放置在中央小控件的右側(cè)
    self.addDockWidget(Qt.RightDockWidgetArea,self.items)

    self.setLayout(layout)
    self.setWindowTitle('Dock 例子')
if __name__ == '__main__':
  app=QApplication(sys.argv)
  demo=DockDemo()
  demo.show()
  sys.exit(app.exec_())

不重寫QDockWidget類 

import sys
from PyQt5.QtCore import *
from PyQt5.QtWidgets import QMainWindow, QTextEdit, QDockWidget, QPushButton, QApplication


class DockDemo(QMainWindow):
  def __init__(self):
    super().__init__()
    self.docker1=QDockWidget('Docker1', self)
    self.docker2=QDockWidget('Docker2', self)
    self.textEdit=QTextEdit()
    self.setCentralWidget(self.textEdit)
    self.btn1=QPushButton('btn1')
    self.btn2=QPushButton('btn2')
    self.btn1.clicked.connect(self.btn1fun)
    self.btn2.clicked.connect(self.btn2fun)
    self.docker1.setWidget(self.btn1)
    self.docker2.setWidget(self.btn2)
    self.addDockWidget(Qt.RightDockWidgetArea,self.docker1)
    self.addDockWidget(Qt.LeftDockWidgetArea, self.docker2)
    self.setWindowTitle('Dock 例子')
    self.resize(400, 300)
  def btn1fun(self):
    self.textEdit.setText('btn1')
    self.docker2.setFloating(True)#開啟懸浮狀態(tài)
  def btn2fun(self):
    self.textEdit.setText('btn2')
    self.docker1.setFloating(True)
    
if __name__ == '__main__':
  app=QApplication(sys.argv)
  demo=DockDemo()
  demo.show()
  sys.exit(app.exec_())

效果: 

重寫QDockWidget類

import sys
from PyQt5.QtCore import *
from PyQt5.QtWidgets import QMainWindow, QTextEdit, QDockWidget, QPushButton, QApplication, QWidget, QVBoxLayout


class docker(QDockWidget):
  def __init__(self, parent):
    super().__init__(parent)
    self.btn1 = QPushButton('btn1')
    self.btn2 = QPushButton('btn2')
    self.vbox = QVBoxLayout()
    self.vbox.addWidget(self.btn1)
    self.vbox.addWidget(self.btn2)
    self.wgt = QWidget()
    self.wgt.setLayout(self.vbox)
    self.setWidget(self.wgt)

class DockDemo(QMainWindow):
  def __init__(self):
    super().__init__()
    self.docker = docker(self)
    self.textEdit = QTextEdit()
    self.setCentralWidget(self.textEdit)
    self.docker.btn1.clicked.connect(self.btn1fun)
    self.docker.btn2.clicked.connect(self.btn2fun)
    self.addDockWidget(Qt.RightDockWidgetArea, self.docker)
    self.setWindowTitle('Dock 例子')
    self.resize(400, 300)

  def btn1fun(self):
    self.textEdit.setText('btn1')

  def btn2fun(self):
    self.textEdit.setText('btn2')


if __name__ == '__main__':
  app = QApplication(sys.argv)
  demo = DockDemo()
  demo.show()
  sys.exit(app.exec_())

效果:

到此這篇關(guān)于PyQt5 QDockWidget控件應(yīng)用詳解的文章就介紹到這了,更多相關(guān)PyQt5 QDockWidget內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

  • Pycharm最新激活碼2019(推薦)

    Pycharm最新激活碼2019(推薦)

    這篇文章主要介紹了Pycharm最新激活碼2019,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • Python中qutip用法示例詳解

    Python中qutip用法示例詳解

    這篇文章主要給大家介紹了關(guān)于Python中qutip用法示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • scrapy爬蟲部署服務(wù)器的方法步驟

    scrapy爬蟲部署服務(wù)器的方法步驟

    本文主要介紹了scrapy爬蟲部署服務(wù)器的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • 利用python提取wav文件的mfcc方法

    利用python提取wav文件的mfcc方法

    今天小編就為大家分享一篇利用python提取wav文件的mfcc方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python實現(xiàn)可下載音樂的音樂播放器

    python實現(xiàn)可下載音樂的音樂播放器

    這篇文章主要為大家詳細介紹了python實現(xiàn)可下載音樂的音樂播放器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • Pandas+Numpy+Sklearn隨機取數(shù)的實現(xiàn)示例

    Pandas+Numpy+Sklearn隨機取數(shù)的實現(xiàn)示例

    使用Python、pandas、numpy、scikit-learn來實現(xiàn)隨機打亂、抽取和切割數(shù)據(jù),文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03
  • 使用python實現(xiàn)希爾、計數(shù)、基數(shù)基礎(chǔ)排序的代碼

    使用python實現(xiàn)希爾、計數(shù)、基數(shù)基礎(chǔ)排序的代碼

    希爾排序是一個叫希爾的數(shù)學(xué)家提出的一種優(yōu)化版本的插入排序。這篇文章主要介紹了使用python實現(xiàn)希爾、計數(shù)、基數(shù)基礎(chǔ)排序,需要的朋友可以參考下
    2019-12-12
  • Python3 json模塊之編碼解碼方法講解

    Python3 json模塊之編碼解碼方法講解

    這篇文章主要介紹了Python3 json模塊之編碼解碼方法講解,需要的朋友可以參考下
    2021-04-04
  • python連接oracle數(shù)據(jù)庫操作實例及遇到的異常

    python連接oracle數(shù)據(jù)庫操作實例及遇到的異常

    這篇文章主要給大家介紹了關(guān)于python連接oracle數(shù)據(jù)庫操作實例及遇到的一些異常,Oracle是著名且廣泛使用的數(shù)據(jù)庫之一,而python的數(shù)據(jù)處理功能可以很好地利用這種連接性,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • 在python中利用GDAL對tif文件進行讀寫的方法

    在python中利用GDAL對tif文件進行讀寫的方法

    今天小編就為大家分享一篇在python中利用GDAL對tif文件進行讀寫的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11

最新評論

阿拉尔市| 岳西县| 任丘市| 微山县| 罗江县| 鄯善县| 贡觉县| 沙田区| 乐清市| 信阳市| 郓城县| 弋阳县| 海口市| 垣曲县| 韶山市| 永修县| 石泉县| 涟水县| 天津市| 锡林浩特市| 偃师市| 长汀县| 玛纳斯县| 辽宁省| 林口县| 伊宁县| 义乌市| 津市市| 沐川县| 若尔盖县| 汾阳市| 潜山县| 沭阳县| 个旧市| 铁岭市| 抚州市| 家居| 岑溪市| 海安县| 绥阳县| 曲沃县|