`
qq49836467
  • 浏览: 5641 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

模块文本Python Rapid GUI Programming 第二篇。 30行写一个更奇葩的计算器。Python 基础教程 模块文本

阅读更多

本篇文章是一篇关于模块文本的帖子

    接上一篇GUI编程的日记,在现我们来写一个常正点程序。先让我们看一下程序的子样。

    image

    看似常正多了。我们有了一个框框,一个X。而且不须要命令行入输了!

    根据上一篇日记所述,我们须要载入模块。

    先载入QT4所用的模块以及算计所用的math模块。

from __future__ import division     #准确除法
import sys
from math import *
from PyQt4.QtCore import *
from PyQt4.QtGui import *

根据截图,这个应用程序用了两个widgets ,一个是QTextBrowser这是一个只读的文本或者HTML查看器, 另一个是QLineEdit 是一个单行的可写的文本查看器。

    根据QT的则规,全部的字符都为Uni编码。

def __init__(self, parent=None):
        super(Form, self).__init__(parent)
        self.browser = QTextBrowser()
        self.lineedit = QLineEdit("Type an expression and press Enter")
        self.lineedit.selectAll()
        layout = QVBoxLayout()
        layout.addWidget(self.browser)
        layout.addWidget(self.lineedit)
        self.setLayout(layout)
        self.lineedit.setFocus()
        self.connect(self.lineedit, SIGNAL("returnPressed()"),
                     self.updateUi)
        self.setWindowTitle("Calculate coding by Kaysin")

这样就完成了初始画面的义定。

    QVBoxLayout()  就是一个可以放置widget的面页。

    而上面的addWidget法方,就是将所建创的widget添加进新的面页。

    上面有触发信号,按下回车。

    载入函数 upadteUi

def updateUi(self):
        try:
            text = unicode(self.lineedit.text())
            self.browser.append("%s = <b>%s</b>" % (text, eval(text)))
        except:
            self.browser.append(
                    "<font color=red>%s is invalid!</font>" % text)

这个很好解理,就是断判入输是不是正当,出现异常则出输不正当。

    我们看下源程序。

from __future__ import division
import sys
from math import *
from PyQt4.QtCore import *
from PyQt4.QtGui import *


class Form(QDialog):

    def __init__(self, parent=None):
        super(Form, self).__init__(parent)
        self.browser = QTextBrowser()
        self.lineedit = QLineEdit("Type an expression and press Enter")
        self.lineedit.selectAll()
        layout = QVBoxLayout()
        layout.addWidget(self.browser)
        layout.addWidget(self.lineedit)
        self.setLayout(layout)
        self.lineedit.setFocus()
        self.connect(self.lineedit, SIGNAL("returnPressed()"),
                     self.updateUi)
        self.setWindowTitle("Calculate coding by Kaysin")


    def updateUi(self):
        try:
            text = unicode(self.lineedit.text())
            self.browser.append("%s = <b>%s</b>" % (text, eval(text)))
        except:
            self.browser.append(
                    "<font color=red>%s is invalid!</font>" % text)


app = QApplication(sys.argv)
form = Form()
form.show()
app.exec_()

文章结束给大家分享下程序员的一些笑话语录: 现在社会太数字化了,所以最好是有一个集很多功能于一身的设备!

分享到:
评论

相关推荐

    PyQt 快速开发 Rapid GUI Programming with Python and Qt

    **PyQt 快速开发:Rapid GUI Programming with Python and Qt** PyQt 是一个 Python 接口,用于 Qt 库,允许开发者使用 Python 语言创建图形用户界面(GUI)应用程序。这本书“Rapid GUI Programming with Python ...

    《Rapid GUI Programming with Python and Qt》PDF

    《Rapid GUI Programming with Python and Qt》是一本深入讲解如何使用Python和Qt库快速开发图形用户界面(GUI)的应用程序的书籍。这本书旨在帮助开发者掌握使用这两种强大的工具创建高效、美观且用户友好的应用...

    Rapid GUI Programming with Python and Qt

    With Rapid GUI Programming with Python and Qt you'll learn how to build efficient GUI applications that run on all major operating systems, including Windows, Mac OS X, Linux, and many versions of ...

    《Rapid GUI Programming with Python and Qt》pdf以及源码

    《Rapid GUI Programming with Python and Qt》是一本深入讲解如何使用Python和Qt库快速构建图形用户界面(GUI)的应用程序的书籍。这本书以其全面且实用的内容,为开发者提供了丰富的资源,帮助他们掌握这两种强大...

    Rapid GUI Programming with Python and Qt 含各章源码

    《Rapid GUI Programming with Python and Qt》是一本深入讲解如何使用Python和Qt库进行图形用户界面(GUI)编程的专业书籍。PyQt是Python的一个模块,它提供了与Qt库的接口,使得开发者能够利用Python的简洁性和Qt...

    Rapid GUI Programming with Python and Qt.rar

    《Rapid GUI Programming with Python and Qt》这本书是Python编程领域中的一个重要参考资料,专注于使用Python语言和Qt库进行图形用户界面(GUI)的快速开发。在Python的世界里,Qt是一个广泛使用的跨平台应用框架...

    Rapid GUI Programming with Python and Qt 源文件

    《Rapid GUI Programming with Python and Qt》是一本深入讲解如何使用Python和Qt库快速构建图形用户界面(GUI)的应用程序的书籍。这本书的核心是利用Python的简洁性和Qt的强大功能,帮助开发者快速创建高效的桌面...

    Prentice-Hall - Rapid GUI Programming with Python and Qt (Oct 2007)

    解压`Prentice-Hall - Rapid GUI Programming with Python and Qt (SourceCode).zip`文件,可以获取到书中示例的完整代码,通过实际运行和调试,有助于加深理解并提升编程技能。 总之,对于希望利用Python进行GUI...

    Python Tkinter GUI Programming Cookbook

    Python GUI Programming Cookbook(2nd) 英文无水印pdf 第2版 pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权...

    Python GUI Programming Cookbook.pdf

    Python is a multi-domain, interpreted programming language. It is a widely used general-purpose, high-level programming language. It is often used as a scripting language because of its forgiving ...

    Python GUI Programming Cookbook Second Edition 2nd

    Python GUI Programming Cookbook Second Edition 包含PDF和epub文件 Book Name : Python GUI Programming Cookbook Edition : 2nd Edition | | ISBN : B01N7IOL6S Author Name : Burkhard A Meier; Category : ...

    GUI Programming with Python

    GUI编程是将图形用户界面(GUI)与Python编程语言相结合的技术,用于创建具有直观图形界面的应用程序。Python提供了多种库来实现GUI编程,如Tkinter、PyQt、wxPython、Kivy等,这些库允许开发者设计和构建各种窗口、...

    Rapid GUI Programming with Python and Qt Oct 2007

    本书《Rapid GUI Programming with Python and Qt》(使用PyQt快速GUI编程)出版于2007年,作者Mark Summerfield,是一本介绍如何使用Python语言和Qt框架进行快速图形用户界面(GUI)编程的权威指南。尽管书中使用的...

Global site tag (gtag.js) - Google Analytics