这一章中,我们将了解如何使用 PyQt 建立 GUI,它能为你提供更多灵活性,可以对程序的外观有更多控制。
写一个 GUI 程序大体上可以分为两个主要部分。你需要创建用户界面本身 (UI),然后编写代码让 UI 按照你的想法来实现功能。创建 UI 需要在窗口上排布一 些东西,比如按钮、文本框、选择框等。然后你编写代码来响应按钮点击、文本框 输入、选择框中选择某项等动作。
 
 eg:带菜单的完整的温度转换程序

import sys
from PyQt4 import QtCore,QtGui,uicform_class = uic.loadUiType("tempconv_menu.ui")[0]class MyWindowClass(QtGui.QMainWindow,form_class):def __init__(self,parent=None):QtGui.QMainWindow.__init__(self,parent)self.setupUi(self)self.btnCtoF.clicked.connect(self.btn_CtoF_clicked)self.btnFtoC.clicked.connect(self.btn_FtoC_clicked)self.actionC_to_F.triggered.connect(self.btn_CtoF_clicked)self.actionF_to_C.triggered.connect(self.btn_FtoC_clicked)self.actionExit.triggered.connect(self.menuExit_selected)def btn_CtoF_clicked(self):cel = float(self.editCel.text())fahr = cel*9.0/5+32self.spinFahr.setValue(int(fahr+0.5))def btn_FtoC_clicked(self):fahr = self.spinFahr.value()cel = (fahr - 32 )*5 /9.0cel_text = '%.2f'%celself.editCel.setText(cel_text)def menuExit_selected(self):self.close()app =QtGui.QApplication(sys.argv)
myWindow = MyWindowClass()
myWindow.show()
app.exec_()

学习总结-《父与子的编程之旅》chapter 20相关推荐

  1. 父与子的编程之旅 python 3 pdf_《父与子的编程之旅》嵌套循环例题解析

    <父与子的编程之旅>,11.4可变嵌套循环的问题解答. numBlocks 书里是Python2.X,我的是Python3.X,原理没有差别. 分析如下: 0.手动输入input 当 in ...

  2. #父与子的编程之旅#第八章

    新年第一篇,新年快乐!不废话,直接入正题! <父与子的编程之旅与小卡特一起学python>这本书真的比较通俗易懂好上手,是编程小白的最佳选择!(编者看到记得给我广告费) 第八章主要讲循环. ...

  3. 父与子的编程之旅--easygui无法使用

    阅读<父与子的编程之旅>根据书中内容在www.helloworldbook2.com中下载了Python2.7,书中说使用本书的安装程序便安装上了Easygui,但是在IDLE中执行imp ...

  4. 学习总结-《父与子的编程之旅》chapter 1

    该章主要介绍python的安装和运行. 书中使用的是python2.7.3版本,然而在学习和编程练习中,我使用的是python3.6,这样在练习的工程中也能熟悉一下python2和3的一些区别. 1. ...

  5. 学习总结-《父与子的编程之旅》chapter 11

    本章学习嵌套与可变循环 ###11.1 嵌套循环 比如要实现打印3个乘法表,就是一个简单的嵌套循环例子.对外循环的每次迭代,内循环都要完成它的所有迭代. ###11.2 可变循环 如果在一个for循环 ...

  6. 学习总结-《父与子的编程之旅》chapter 6

    通过运用EasyGui,简单的了解一下什么是GUI(图形用户界面),并进行简单的使用练习. 6.1什么是GUI GUI是Graphical User Interface的缩写,其中包括键入文本和返回文 ...

  7. 学习总结-《父与子的编程之旅》chapter 14

    本章主要讲对象. 此篇往后 先只附上代码示例,内容之后有空再来填补. 示例: class Hot_dog:def __init__(self):self.cooked_level = 0self.co ...

  8. 《父与子的编程之旅——Python》(一)序章-第一章-第二章

    Python在作者的口中是一种比较简单的编程语言,但是作为一名初学者,我还是选择了这样一本"陪小朋友"一起学习Python的教学书,一步步来吧 1.2从IDLE启动Python 启 ...

  9. 父与子一起学python3,父与子的编程之旅 与小卡特一起学Python 第3版(全彩印刷)...

    章 出发吧 1 1.1 安装Python 1 1.2 从IDLE启动Python 2 1.3 来点指令吧 3 1.4 与Python交互 5 1.5 该编程了 7 1.6 运行你的个程序 9 1.7 ...

最新文章

  1. 使用Jupyter Notebook
  2. IntelliJ IDEA导入多个eclipse项目到同一个workspace下
  3. Android studio 自定义打包apk名
  4. 教你搭建Tiles工程-HelloTiles(附源码)
  5. Learning python学习总结之字符串方法
  6. 初识图机器学习(part5)--图表示学习2.0
  7. MongoDB 副本集的相关概念【转】
  8. css光盘转动,CSS 实现加载动画之五-光盘旋转
  9. SEO:避免关键词内部竞争带来的无法收录问题,
  10. 接口接收数据_你知道RS232与RS485接口的区别吗?
  11. HiBit Startup Manager(电脑开机启动项管理软件)官方中文版V2.3.20 | 电脑启动项管理工具下载
  12. 【RRT三维路径规划】基于matlab RRT算法无人机三维路径规划【含Matlab源码 1270期】
  13. 皮尔森相关系数_克莱姆相关系数的计算
  14. 完工后的决算书范本_竣工结算书样本.doc
  15. 最新全志超清4K视频编解码芯片-V316处理器
  16. 【转贴】常识普及:广府人是越佬族
  17. 新入职公司离职率高怎么办
  18. SpringBoot——关于banner
  19. 神经网络分类算法是什么,神经网络分类算法简介
  20. java将中文转换为pinyin/繁简互转

热门文章

  1. 用串口(TFTP)给设备升级程序
  2. 如何优雅地读写HttpServletRequest和HttpServletResponse的请求体
  3. 根据具体日期计算是一年的第几周和当月的第几周
  4. 【答学员问】网站换ip后遇到的问题排查思路
  5. HTML5 网页添加背景音乐
  6. 【项目总结】基于SpringBoot+Ansj分词+正倒排索引的Java文档搜索引擎项目总结
  7. RealmObject-粗心操作引发的巨坑
  8. C#实现发送和接收邮件的winform邮箱(保存至MySQL本地数据库)Mail Client
  9. 工业数据治理:全解时序数据处理工具
  10. 网页调试工具显示waiting TTFB时间过长的问题