*PyQt4 精彩实例分析* 实例14 分割窗口
来源:互联网 发布:centos libgcc s.so 编辑:程序博客网 时间:2024/05/21 15:01
分割窗口是应用程序中经常用到的,它可以灵活分布窗口的布局,经常用于类似文件资源管理器的窗口设计中。本实例实现一个分割窗口使用的例子,实现的效果图如下。
整个对话框由3个窗口组成,各个窗口之间的大小可随意拖动改变。此实例使用QSplitter类来实现,实现代码如下所示:
# -*- coding: utf-8 -*-from PyQt4.QtGui import *from PyQt4.QtCore import *import sysQTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))class MainWidget(QMainWindow): def __init__(self,parent=None): super(MainWidget,self).__init__(parent) font=QFont(self.tr("黑体"),12) QApplication.setFont(font) mainSplitter=QSplitter(Qt.Horizontal,self) leftText=QTextEdit(self.tr("左窗口"),mainSplitter) leftText.setAlignment(Qt.AlignCenter) rightSplitter=QSplitter(Qt.Vertical,mainSplitter) rightSplitter.setOpaqueResize(False) upText=QTextEdit(self.tr("上窗口"),rightSplitter) upText.setAlignment(Qt.AlignCenter) bottomText=QTextEdit(self.tr("下窗口"),rightSplitter) bottomText.setAlignment(Qt.AlignCenter) mainSplitter.setStretchFactor(1,1) mainSplitter.setWindowTitle(self.tr("分割窗口")) self.setCentralWidget(mainSplitter) app=QApplication(sys.argv)main=MainWidget()main.show()app.exec_()
第11-12行指定显示的字体。
第14行定义一个QSplitter类对象,为主分割窗口,设定此分割窗为水平分割窜。
第15行定义一个QTextEdit类对象,并插入主分割窗口中。
第16行调用setAlignment()方法,设定TextEdit中文字的对齐方式,常用的有以下几种。
Qt.AlignLeft:左对齐。
Qt.AlignRight:右对齐。
Qt.AlignCenter:文字居中(Qt.AlignHCenter为水平居中,Qt.AlignVCenter为垂直居中)。
Qt.AlignUp:文字与顶端对齐。
Qt.AlignBottom:文字与底部对齐。
第17行定义一个右部的分割窗口,定义为垂直分割窗,并以主分割窗口为父窗口。
第18行调用的方法setOpaqueResize(boolean)用由设定分割窗的分割条在拖动时是否为实时更新显示,若设为True则实时更新显示,若设为False则在拖动时只显示一条灰色的精线条,在拖动到位并弹起鼠标后再显示分割条。默认设为True,这和Qt3正好相反,Qt3中默认为False。
第23行setStretchFactor()方法用于设定可伸缩控件,它的第一个参数指定设置的控件序号,控件序号按插入的先后次序从0起依次编号,第二个参数大于0的值表示此控件为可伸缩控件。此实例中设定右部分割窗为可伸缩控件,当整个对话框的宽度发生改变时,左部的文件编辑框宽度保持不变,右部的分割窗宽度随整个对话框大小的改变进行调整。
注:本文基本上是经过改编的《Linux窗口程序设计--Qt4精彩实例分析》一书的PyQt4 for windows版本
转自:http://blog.csdn.net/chumpklutz/article/details/6073857
- *PyQt4 精彩实例分析* 实例14 分割窗口
- PyQt4 精彩实例分析* 实例15 停靠窗口
- PyQt4 精彩实例分析* 实例22 电子钟
- PyQt4 精彩实例分析* 实例24 基本QMainWindow主窗口程序
- *PyQt4 精彩实例分析* 实例17 综合布局实例
- PyQt4 精彩实例分析* 实例1 Hello Kitty!
- PyQt4 精彩实例分析* 实例2 标准对话框的使用
- PyQt4 精彩实例分析* 实例4 使用标准输入框
- PyQt4 精彩实例分析* 实例6 实现QQ抽屉效果
- PyQt4 精彩实例分析* 实例7 表格的使用
- PyQt4 精彩实例分析* 实例8 使用进度条
- PyQt4 精彩实例分析* 实例11 动态加载Ui
- PyQt4 精彩实例分析* 实例12 基本布局管理
- *PyQt4 精彩实例分析* 实例3 各类位置信息
- PyQt4 精彩实例分析* 实例13 多文档
- PyQt4 精彩实例分析* 实例18 可扩展对话框
- PyQt4 精彩实例分析* 实例21 不规则窗体
- *PyQt4 精彩实例分析* 实例23 程序启动画面
- 面试问题(非编程)汇总
- keil 4出现ientifier"xxxxx" is undefined 问题,而又找不到出语法问题时,可能的问题。
- jffs2 启动的常见的问题
- CMD 绿色通道
- 百度知道推广和隔天删除收录的解决方法
- *PyQt4 精彩实例分析* 实例14 分割窗口
- ini文件读取通用类
- 关于XDC工具的文章
- 动态规划面试题
- 导入android SlidingMenu 应用
- sizeof
- 数组、链表实现栈(C语言版)
- VC6升级到VC9,线程中自定义消息的升级方法
- 同洲电子“下战书”,机顶盒行业面临“洗礼”