zoukankan      html  css  js  c++  java
  • 拆分窗口QSplitter

    拆分窗口中可以添加许多子控件,各个子控件通过拆分线相互分隔开来,拖动该拆分线可以随意改变子控件大小

     1 import sys
     2 from PyQt5.QtCore import Qt
     3 from PyQt5.QtWidgets import QApplication, QSplitter, QListView, QTreeView, QTableView, QDirModel,QWidget
     4 
     5 class Demo(QWidget):
     6     def __init__(self):
     7         super(Demo, self).__init__()
     8         self.resize(800,220)
     9         self.p=QSplitter(self)  #实例化拆分窗口
    10         self.dir_model = QDirModel(self)  # 实例化目录模型QDirModel
    11 
    12         self.list_view = QListView(self)
    13         self.tree_view = QTreeView(self)
    14         self.table_view = QTableView(self)
    15         self.list_view.setModel(self.dir_model) #给列表视图设置模型【目录模型】
    16         self.tree_view.setModel(self.dir_model) #给树形视图设置模型【目录模型】【列出目录-非常好】
    17         self.table_view.setModel(self.dir_model)#给表格视图设置模型
    18         self.tree_view.move(270,0)
    19         self.table_view.move(540,0)
    20 
    21         self.tree_view.doubleClicked.connect(self.show_func) #双击树形视图时发出信号
    22         #此信号会自动发出包含被双击项信息的参数
    23 
    24         #self.p.setOrientation(Qt.Vertical) #设置拆分窗口的方向
    25         #Qt.Vertical  垂直方向
    26         #拆分窗口默认是水平
    27 
    28         self.p.addWidget(self.list_view)  #给拆分窗口添加控件
    29         self.p.addWidget(self.tree_view)
    30         self.p.insertWidget(0, self.table_view)  #给拆分窗口插入控件。参数1:位置
    31         self.p.setSizes([300, 200, 200])  #设置子控件的高度-垂直,宽度-水平
    32         print(self.p.count())  #返回子控件的数量
    33         #
    34 
    35     def show_func(self, index):
    36 
    37         self.list_view.setRootIndex(index)  #设置列表视图的根索引。把index项目做为列表视图的根索引并显示出来
    38         self.table_view.setRootIndex(index) #设置表格视图的根索引
    39 
    40 
    41 if __name__ == '__main__':
    42     app = QApplication(sys.argv)
    43     demo = Demo()
    44     demo.show()
    45     sys.exit(app.exec_())
  • 相关阅读:
    tomcat 服务器发布网站
    AJAX服务器返回数据 连接数据库查询数据
    MyEclipse jsp 中文乱码
    sql 数据库修复
    jquery checkbox
    Nexus介绍
    navicat for mysql快捷键
    Mysql limit offset用法举例
    tortoiseSVN如何发现和解决冲突?
    maven指定项目的构建、打包和tomcat插件的pom.xml配置
  • 原文地址:https://www.cnblogs.com/liming19680104/p/10383164.html
Copyright © 2011-2022 走看看