`
liseor
  • 浏览: 48338 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Linux窗口程序设计 Qt4精彩实例分析 pyqt实现

阅读更多

位置函数

 

from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys

class Geometry(QDialog):
    def __init__(self,parent = None):

        super(Geometry,self).__init__(parent)
        
        self.labelx             = QLabel("x: ")
        self.labely             = QLabel("y: ")
        self.labelframeGeometry = QLabel("frameGeometry : ")
        self.labelpos           = QLabel("pos : ")
        self.labelwidth         = QLabel("width : ")
        self.labelheight        = QLabel("height : ")
        self.labelrect          = QLabel("rect : ")
        self.labelsize          = QLabel("size : ")
        
        self.xlabel             = QLabel()
        self.ylabel             = QLabel()
        self.frameGeometrylabel = QLabel()
        self.poslabel           = QLabel()
        self.widthlabel         = QLabel()
        self.heigthlabel        = QLabel()
        self.rectlabel          = QLabel()
        self.sizelabel          = QLabel()
        
        self.layout             = QGridLayout()
        self.layout.addWidget(self.labelx,0,0)
        self.layout.addWidget(self.xlabel,0,1)
        self.layout.addWidget(self.labely,1,0)
        self.layout.addWidget(self.ylabel,1,1)
        self.layout.addWidget(self.labelwidth,2,0)
        self.layout.addWidget(self.widthlabel,2,1)
        self.layout.addWidget(self.labelrect,3,0)
        self.layout.addWidget(self.rectlabel,3,1)
        self.layout.addWidget(self.labelsize,4,0)
        self.layout.addWidget(self.sizelabel,4,1)
        self.layout.addWidget(self.labelframeGeometry,5,0)
        self.layout.addWidget(self.frameGeometrylabel,5,1)
        self.layout.addWidget(self.labelheight,6,0)
        self.layout.addWidget(self.heigthlabel,6,1)
        self.layout.addWidget(self.labelpos,7,0)
        self.layout.addWidget(self.poslabel,7,1)
        
        self.setLayout(self.layout)
        self.setWindowTitle("geometry")
    def updateLabel(self):
        temp = QString()
        self.xlabel.setText(temp.setNum(self.x()))
        self.ylabel.setText(temp.setNum(self.y()))
        
        r = temp.setNum(self.rect().x()) + ","+temp.setNum(self.rect().y()) \
                          +","+temp.setNum(self.rect().width())+","+temp.setNum(self.rect().height()) 
        self.rectlabel.setText(r)
    
    def moveEvent(self,event):
        self.updateLabel()
    def resizeEvent(self,event):
        self.updateLabel()
        
        
        
        
if __name__ == '__main__':
    app = QApplication(sys.argv)
    sd = Geometry()
    sd.show()
    app.exec_()

 

 

 

标准对话框的使用

 

from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys


class StandardDialog(QDialog):
    def __init__(self,parent = None):
        super(StandardDialog,self).__init__(parent)

        
        self.filePushButton = QPushButton("File Dialog")
        self.fileLineEdit   = QLineEdit()
        self.fileLineEdit.setText("Hello")
        self.colorPushButton = QPushButton("Color Dialog")   
        self.colorFrame = QFrame()
        self.colorFrame.setFrameShape(QFrame.Box)
        self.colorFrame.setAutoFillBackground(True)
        
        self.fontPushButton = QPushButton("Font Dialog")
        self.fontLineEdit   = QLineEdit()
        self.fontLineEdit.setText("Font Dialog")
        
        gridlayout = QGridLayout()
        gridlayout.addWidget(self.filePushButton,0,0)
        gridlayout.addWidget(self.fileLineEdit,0,1)
        gridlayout.addWidget(self.colorPushButton,1,0)
        gridlayout.addWidget(self.colorFrame,1,1)
        gridlayout.addWidget(self.fontPushButton,2,0)
        gridlayout.addWidget(self.fontLineEdit,2,1)
        
        self.connect(self.filePushButton,SIGNAL("clicked()"),self.openFileDialog)
        self.connect(self.colorPushButton, SIGNAL("clicked()"),self.openColorDialog)
        self.connect(self.fontPushButton, SIGNAL("clicked()"),self.openFontDialog)
        
        self.setLayout(gridlayout)
        
    def openFileDialog(self):
        s = QFileDialog.getOpenFileName(None, "open file dialog")
        self.fileLineEdit.setText(s)
    def openColorDialog(self):
        color = QColorDialog.getColor(Qt.blue)
        self.colorFrame.setPalette(QPalette(color))
    def openFontDialog(self):
        font,ok = QFontDialog.getFont()
        self.fontLineEdit.setFont(font)
                    
        
if __name__ == '__main__':
    app = QApplication(sys.argv)
    sd = StandardDialog()
    sd.show()
    app.exec_()

 

分享到:
评论

相关推荐

    linux窗口程序设计——Qt4精彩实例分析 附加源代码

    Linux窗口程序设计主要涉及到图形用户界面(GUI)的开发,而Qt4是一个广泛使用的跨平台应用程序框架,尤其在Linux环境中非常流行。这个压缩包提供的内容很可能是关于如何使用Qt4库来创建Linux上的桌面应用程序的一...

    Linux 窗口程序设计 精彩实例分析

    总之,"Linux窗口程序设计精彩实例分析"涵盖了Qt4库在Linux下的广泛应用,从基本的GUI构建到高级特性的实现,都是开发者应该掌握的关键技能。通过深入学习和实践,开发者不仅可以创建出美观的窗口程序,还能实现高效...

    linux窗口程序设计-实例分析

    这篇文档将深入探讨如何使用QT4进行Linux窗口程序设计,通过实例代码来帮助理解。 QT4库提供了丰富的控件和API,使得开发者能够轻松创建出功能强大的窗口应用。其核心特性包括事件处理、布局管理、网络编程、数据库...

    linux窗口程序设计--源代码

    通过分析并实践这些源代码,你可以深入理解Linux窗口程序的设计原理,包括图形界面的构建、事件处理、资源管理等方面。这将有助于提升你在Linux开发环境下的编程技能,无论是开发桌面应用还是进行系统级的图形界面...

    PyQt4 精彩实例分析26个例子

    注:本文基本上是经过改编的《 Linux窗口程序设计-Qt4精彩实例分析》一书的PyQt4for windows版本 可以这么写: b clicked. connect( app. quit) 这样就少了一些 hardcode的字符串了,更加 pythonic 实例2标准对话框的...

    pyQT4 Gui小程序

    PyQT4 GUI小程序是利用Python的...总的来说,通过分析和学习这个PyQT4 GUI小程序,初学者不仅可以掌握PyQT4的基本用法,还能了解如何结合实际应用场景构建交互式程序,同时提升对Python数据处理和用户界面设计的理解。

    python实现好看的GUI界面pyqt5

    PyQT5是Qt库的Python绑定,Qt本身是一个跨平台的应用程序开发框架,支持Windows、Linux、macOS等多种操作系统。PyQT5不仅包含了用于创建GUI的基本元素,如按钮、文本框、菜单等,还提供了高级组件,如进度条、图表和...

    pyqt4 tertis

    通过阅读和理解代码,可以学习如何使用PyQt4构建GUI,如何处理事件(如键盘输入),以及如何设计和实现游戏逻辑。同时,也可以了解到如何优化代码结构以提高代码质量。 在实际操作中,可以尝试以下步骤: 1. **阅读...

    PYTHON QT GUI快速编程 PYQT编程指南

    PyQt是将Qt库与Python结合的工具,主要有两个版本:PyQt4(基于Qt4)和PyQt5(基于Qt5)。本指南可能主要涉及PyQt5,因为它是当前更为广泛使用的版本。 ### 三、PyQt5基础知识 1. **安装PyQt5**: 通过pip工具可以...

    PyQt_pyqtgui_pythonpyqt_pyqt_python_

    PyQt主要分为两个模块:PyQt4和PyQt5,其中PyQt5是较新的版本,兼容Python 3。在这个PyQt相关的资源中,可能包含的是使用PyQt5进行GUI编程的一些示例代码和教程,非常适合Python初学者作为入门学习材料。 PyQt的...

    PyQt快速开发与实战(非源码)

    通过PyQt5,开发者能够利用其丰富的组件库来构建跨平台的应用程序,支持的操作系统包括Windows、macOS以及Linux等。 #### 二、PyQt5的主要特点 1. **跨平台性**:PyQt5能够在多种操作系统上运行,这使得开发出的...

    精通qt4编程(源代码)

    \ 第4章 程序主窗口—— QMainWindow 卢传富 Qt应用程序的主窗口是由多个部件/组件构成的框架,本章通过一个简单文本编辑器的例子,介绍了主窗口的菜单、工具条、中心部件、锚接部件和状态条,并通过Qt设计器绘制和...

    python参考文献

    例如,《Linux窗口程序设计-Qt4精彩实例分析》和《精通Qt4编程》虽然以Qt和C++为主,但其中的实例和代码片段对于理解跨平台GUI开发的挑战和解决方案非常有帮助。 ### 结论 总之,“python参考文献”虽然是一个宽泛...

    精通Qt4编程(第二版)源代码

    \ 第4章 程序主窗口—— QMainWindow 卢传富 Qt应用程序的主窗口是由多个部件/组件构成的框架,本章通过一个简单文本编辑器的例子,介绍了主窗口的菜单、工具条、中心部件、锚接部件和状态条,并通过Qt设计器绘制和...

    PyQt-master.zip

    这个压缩包的核心内容很可能是各种PyQt的实例代码,可能包括了窗口界面设计、控件使用、事件处理、信号与槽机制、对话框、菜单、工具栏、布局管理等方面的知识点。通过这些例子,你可以了解到如何使用PyQt创建窗口、...

    Python & Qt Designer 初探

    而Qt则是一个跨平台的应用程序框架,它提供了丰富的GUI组件,可以在Windows、Linux、macOS等多个操作系统上运行。 Qt Designer是Qt库的一部分,它是一个可视化设计工具,允许开发者通过拖放方式创建GUI界面,无需...

    PyQt5-Chinese-tutoral-master.rar

    Qt库是由Qt Company提供的跨平台应用程序开发框架,支持Windows、Linux、macOS等多个操作系统。PyQt5包含了Qt的全部组件,如窗口、按钮、菜单、对话框等,以及网络、多媒体、数据库等功能。 2. **安装PyQt5** 虽然...

    Qt图形界面开发培训

    **1.6 使用Qt开发的程序实例** - **KDE**: 著名的桌面环境。 - **Google Earth**: 三维虚拟地图软件。 - **VirtualBox**: 虚拟机软件。 - **Opera**: 浏览器。 - **VLC多媒体播放器**: 开源媒体播放器。 - **Skype**...

    pyqt5 使用label控件实时显示时间的实例

    本篇文章将详细介绍如何利用PyQt5中的`QLabel`控件来实现实时显示系统当前时间的功能,并对其背后的原理进行深入分析。 #### 二、基础知识 1. **PyQt5简介**: - PyQt5是由Riverbank Computing开发的一个Python...

Global site tag (gtag.js) - Google Analytics