- 博客(49)
- 资源 (10)
- 收藏
- 关注
原创 Qt-命令模式
命令模式 定义:将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。类图客户角色(Client): 创建具体的命令对象,并且设置命令对象的接收者。命令角色(Command): 定义命令的接口,声明执行的方法。这是一个抽象类。具体命令角色(ConcreteCommand):命令接口实现对象,是“虚”的实现;
2016-07-31 02:30:28
1471
原创 Qt-单例模式
单例模式 定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 最常见的使用方法:class CSingleton{private: CSingleton() //构造函数是私有的 { }public: static CSingleton * GetInstance() {
2016-07-30 15:56:34
1774
原创 Qt-装饰者模式
1. 定义装饰者模式 装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。装饰者和被装饰对象有共同的超类型你可以用一个或多个装饰者包装一个对象。既然装饰者和被装饰对象有相同的类型,所以在任何需要原始对象(被包装)的场合,可以用装饰过的对象代替它。装饰者可以在所委托被装饰者的行为之前与/或之后,加上自己的行为,以达到特定的目的。对象可以在任
2016-07-17 21:47:48
1252
原创 QtXlsx使用方法(强大的Excel)
今天有幸了解到QtXlsx:http://qtxlsx.debao.me/一个强大的对Excel的操作,不仅跨平台,而且不需要安装Excel,读写速度杠杠的。但是用它的话,还得稍微配置下,查询博客,都是有点缺斤少两的。感觉写的不好。下来我来说下怎么配置。首先,下载QtXlsx类,地址:https://github.com/dbzhang800/QtXlsxWriter这个网页下
2016-06-02 00:23:18
45747
18
原创 PyQt5:QCalendarWidget日历部件(27)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记QCalendarWidget类提供了以月为单位的日历部件。该部件允许用户以一种简单而直接的方式选择日期。#!/usr/bin/python# calendar.pyfrom PyQt5.QtWidgets import QApplication, QCalendarWidget, QLabel, QVBoxLayout
2016-06-01 00:51:37
5107
原创 PyQt5:QProgressBar进度条(26)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记当我们在处理一个耗时较长的任务时,可能就会用到进度条部件。因为使用进度条可以形象告诉用户当前的任务正在进行中。PyQt5工具包提供了水平和垂直两种类型的进度条部件。我们可以设置进度条的最大和最小值,默认的最大和最小值分别为0和99。#!/usr/bin/python# progressbar.pyfrom PyQt5.QtWidg
2016-06-01 00:48:59
43379
1
原创 PyQt5:QSlider滑块、QLabel标签(25)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记QSlider滑块、QLabel标签 滑块部件由一个简单的操控杆构成,用户可以通过向前或向后滑动滑块来选择数据。这种选择数据的方式对一些特殊的任务来说比单纯的提供一个数据或使用spinbox调整数据大小的方式要自然与友好的多。而标签部件则用来显示文本或图片。 在一下的示例中,我们将在窗口中显示
2016-06-01 00:47:19
6693
1
原创 PyQt5:ToggleButton开关按钮(24)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记PyQt5没有开关按钮部件。但是我们可以使用在特殊状态下的QPushButton部件来创建开关按钮。而所谓的开关的按钮就是一个具有按下和未按下两种状态的普通按钮。用户可以通过点击按钮来切换其开或关状态。在一些情况下,这个特性会非常好用。#!/usr/bin/python# togglebutton.pyfrom PyQt5.QtW
2016-06-01 00:45:06
8179
原创 PyQt5:QRadioButton 单选框(23)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记dioButton单选框 单选框具有两种状态:被选中或未被选中。当用户选择或者取消选择,单选框就会发射一个toggled(bool checked)信号#!/usr/bin/python# RadioButton.pyfrom PyQt5.QtWidgets import QApplication, QRad
2016-06-01 00:42:54
13145
原创 PyQt5:QFileDialog文件对话框(22)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记文件对话框允许用户选择文件或者文件夹,被选择的文件可以进行读或写操作。#!/usr/bin/python# openfiledialog.pyfrom PyQt5.QtWidgets import QApplication, QAction, QFileDialog, QTextEditfrom PyQt5 import
2016-06-01 00:40:41
16071
原创 PyQt5:QFontDialog字体对话框(21)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记字体对话框一个用来设置字体的对话框部件#!/usr/bin/python# fontdialog.pyfrom PyQt5.QtWidgets import QApplication, QPushButton, QFontDialog, QHBoxLayout, QLabelfrom PyQt5 import Qt
2016-06-01 00:38:36
2275
原创 PyQt5:QColorDialog颜色对话框(20)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记QColorDialog 提供了用于选择颜色的对话框#!/usr/bin/python# colordialog.pyfrom PyQt5.QtWidgets import QApplication, QPushButton, QColorDialogfrom PyQt5 import QtWidgetsfrom Py
2016-06-01 00:36:48
4292
原创 PyQt5:对话框、预定义对话框(19)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记QInputDialog输入对话框 QInputDialog提供了一种获取用户单值数据的简洁形式。它接受的数据有字符串,数字和列表的一项数据等。#!/usr/bin/python# inputdialog.pyfrom PyQt5.QtWidgets import QApplication, QPush
2016-06-01 00:34:09
1482
原创 PyQt5:发射信号(18)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记继承自QtCore.QObject的对象均可以发射信号。如果我们单击一个按钮,那么一个clicked()信号就会被触发。在接下来的示例中,我们将学习如果手动发射一个信号。#!/usr/bin/python# emit.pyfrom PyQt5.QtWidgets import QApplicationfrom PyQ
2016-06-01 00:32:43
2568
原创 PyQt5:重写事件处理方法(17)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记PyQt中的事件处理主要依赖重写事件处理函数。#!/usr/bin/python# escape.pyfrom PyQt5.QtWidgets import QApplicationfrom PyQt5 import QtWidgetsfrom PyQt5.QtCore import Qtclass Escape(QtWi
2016-06-01 00:30:28
6417
1
原创 PyQt5:事件与信号(16)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记事件 事件(Events)是GUI程序中很重要的一部分。它由用户或系统产生。当我们调用程序的exec_()方法时,程序就会进入主循环中。主循环捕获事件并将它们发送给相应的对象进行处理。为此,Trolltech引入了信号与槽机制。信号与槽 当用户点击一个按钮,拖动一个滑块或进行其他动作时,相
2016-06-01 00:28:48
1327
原创 PyQt5:表格布局(15)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记最容易遗漏的QFormLayout 通常我们想到布局就是水平、垂直和网格布局,并且这三种布局基本可以实现所有的界面部件的放置。但是并不代表每次都是最适合的。如实现电话本界面:联系人:XXX电话: XXX地址: XXX邮箱: XXX这个时候我们使用QFormLayout表格布局,标签和值的
2016-06-01 00:26:41
4630
原创 PyQt5:网格布局2(14)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记部件在网格布局中可以跨越多行或者多列。我们将下面的示例中演示该情况。#!/usr/bin/python# gridlayout2.pyfrom PyQt5.QtWidgets import QApplication, QLineEdit, QLabel, QGridLayoutfrom PyQt5 import QtWid
2016-06-01 00:25:00
6432
原创 PyQt5:网格布局(13)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记最通用的布局类别是网格布局(QGridLayout)。该布局方式将窗口空间划分为许多行和列。要创建该布局方式,我们需要实用QGridLayout类。#!/usr/bin/python# gridlayout.pyfrom PyQt5.QtWidgets import QApplication, QPushButton, QLab
2016-06-01 00:22:07
1898
原创 PyQt5:Box布局(12)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记 使用布局类别方式的布局管理器比绝对定位方式的布局管理器更加灵活实用。它是窗口部件的重要布局管理方式。最基本的布局方式是QHBoxLayout和QVBoxLayout方式,分别将窗口部件水平和垂直排列。 假设我们要讲两个按钮放在窗口的右下角。为创建该布局,我们需要实用一个水平的Box和一个垂直的Bo
2016-06-01 00:19:59
1594
原创 PyQt5:布局管理器:绝对定位方式(11)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记布局管理器是编程中重要的一部分。所谓布局管理是指我们在窗口中安排部件位置的方法。布局管理有两种工作方式:绝对定位方式(absolute positioning)和布局类别方式(layout classes)绝对定位方式 该方式下,程序员编程指定每一个部件的位置和尺寸像素。当使用绝对定位方式时,需要注意一下几点
2016-06-01 00:18:30
4930
原创 PyQt5:将它们聚合在一起(10)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记在本章的最后一个示例中,我们将创建一个菜单栏、一个工具栏和一个状态栏。我们还会创建一个中心部件。#!/usr/bin/python# mainwindow.pyfrom PyQt5.QtWidgets import QApplication, QAction, QTextEditfrom PyQt5.QtGui impor
2016-06-01 00:16:36
856
原创 PyQt5:工具栏(9)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记菜单对程序中的所有命令进行分组放置,而工具栏则提供了快速执行最常用命令的方法。#!/usr/bin/python# toolbar.pyfrom PyQt5.QtWidgets import QApplication, QActionfrom PyQt5.QtGui import QIconfrom PyQt5 imp
2016-06-01 00:14:41
1574
原创 PyQt5:菜单栏(8)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记菜单栏是GUI程序最明显的组成部分。它由一组位于不同菜单中的命令组成。在控制台程序中,我们必须记住那些晦涩难懂的命令。但在GUI程序中,通过菜单栏我们将命令合理的放置在不同的菜单中来降低学习新应用程序的时间开销。#!/usr/bin/python# menubar.pyfrom PyQt5.QtWidgets import QA
2016-06-01 00:12:22
1993
原创 PyQt5:PyQt5中的菜单和工具栏、主窗口(7)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记主窗口 QMainWindow类用来创建应用程序的主窗口。通过该类,我们可以创建一个包含状态栏、工具栏和菜单栏的经典应用程序框架状态栏 状态栏用来像是状态信息的串口部件#!/usr/bin/python# statusbar.pyfrom PyQt5.QtWidgets import QApp
2016-06-01 00:10:33
1748
原创 PyQt5:将窗口放在屏幕中间(6)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记以下的脚本显示了将窗口放在屏幕的中间位置方法。#!/usr/bin/python# center.pyfrom PyQt5 import QtWidgetsfrom PyQt5.QtWidgets import QDesktopWidgetclass Center(QtWidgets.QWidget): def __i
2016-06-01 00:07:19
6735
原创 PyQt5:消息窗口(5)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记#!/usr/bin/python# messagebox.pyfrom PyQt5 import QtWidgetsfrom PyQt5.QtWidgets import QMessageBoxclass MessageBox(QtWidgets.QWidget): def __init__(self, pare
2016-06-01 00:04:43
4042
原创 PyQt5:关闭窗口(4)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记 一个显而易见的关闭窗口的方式是单击标题栏右上角的X标记。在接下来的示例中,我们将展示如何用代码来关闭程序,并简要介绍Qt的信号和槽机制。 下面是QPushButton的构造函数,我们将会在下面的示例中使用它。 QPushButton(constQString text, Q
2016-06-01 00:02:47
23236
原创 PyQt5:显示提示信息(3)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记我们可以为任何窗口部件设置一个气球提示。#!/usr/bin/python# tooltip.pyfrom PyQt5.QtWidgets import QApplicationfrom PyQt5.QtWidgets import QToolTipfrom PyQt5 import QtWidgetsfrom PyQt5
2016-06-01 00:01:19
7059
原创 PyQt5:程序图标(2)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记程序图标就是一个小图片,通常显示在程序标题栏的左上角。在以下的示例中,我们将学习如何在PyQt5中使用程序图标,另外我们还将学习一些新的方法。#!/usr/bin/python# icon.pyfrom PyQt5.QtGui import QIconfrom PyQt5 import QtWidgetsclass I
2016-05-31 23:58:42
11821
原创 PyQt5:使用PyQt5 创建入门程序 (1)
学习《PyQt4入门指南 PDF中文版.pdf 》笔记#!/usr/bin/python# simple.pyimport sysfrom PyQt5 import QtWidgetsapp = QtWidgets.QApplication(sys.argv)widget = QtWidgets.QWidget()widget.resize(250, 150)w
2016-05-31 23:55:20
7305
原创 PyQt5:计算器UI(1)
对照PyQt5的计算器demo 和 Qt4.7的计算器demo ,初步了解信号槽、函数和UI的写法。大概了解了下UI的写法1. main.cpp在Qt C++ 里面首先入口函数是:int main(int argc, char *argv[]){ QApplication app(argc, argv); Calculator calc; ca
2016-05-27 00:00:33
3357
原创 PyQt5:控件的基本属性(2)
打开设计器像基本属性都可以设置,字体大小,字体,对话框名字,图标这类属性。当然和Qt一样,也可以使用代码设置例如Dialog.setWindowTitle(_translate("Dialog", "对话框"))Ps:每次修改对话框要重新编译下,生成对应的py文件,其实就是把ui文件转化成Python能认识的内容。
2016-05-26 20:54:11
2372
原创 PyQt5:建立对话框(1)
1.点击 Project --- New填好,点击OK。2.点击第二个标签。3.点击右键,new Form 并且选择 Dialog弹出一个保存对话框,输入你的Dialog名字即可(就是这个ui的名字)如果你使用过Qt就会很熟悉设计器界面了,如果没有适用过,抱歉我也不知道怎么没描述了。请原谅我先学习的Qt。按照下图,添加3个QPushButton和一个
2016-05-26 19:03:09
3928
原创 PyQt5环境搭建
环境:Python3.5 + eric6 + PyQt5(5.6) 软件选择64位1. 软件Python下载地址:https://www.python.org/downloads/windows/由于PyQt5的版本,此Python下载的版本号是3.5.1eric6下载地址:http://eric-ide.python-projects.org/eric-down
2016-05-26 18:10:18
3573
原创 Qt使用第三方库
背景:有时候我们需要调用处理第三方库来完成自己一些功能处理。解决方案:方法1. 一般情况我们都会按照网上的方法 在 .pro文件里面添加 LIBS += -L 路径 库 来配置方法2. 直接在项目上面点击右键->Add Library ,如下图然后选择添加第三方库选择Next ,加上你的库路径,这里可以配置静态动态,不同系统下面,方便pro的自动配置。
2016-05-05 22:42:26
2647
原创 Qt读取字符信息乱码
背景:使用某设备读取身份证信息,在使用设备自带SDK在VS2008可以读取正确,在Qt读取显示乱码。原因:VS2008里面,默认是Unicode编码模式,而Qt在windows下面默认是GBK编码模式,所以显示乱码。解决方法: QByteArray byte(idcardData.Name); QTextCodec *codec
2016-05-05 22:33:50
674
原创 用windeployqt打包Release版本后提示错误
用windeployqt打包后,程序提示如下错误:This application failed to start because it could not find or load the Qt platform plugin "windows".根据查询 因为自己在程序的main函数里面加了一句话引起的。QApplication::addLibraryPath("./plugi
2016-04-19 22:13:34
1340
原创 Qt中配置Winpcap
1. 下载WinPcap_4_1_3.exe 驱动。 官网:http://www.winpcap.org/install/default.htm2. 下载开发包 WpdPack_4_1_2.zip 。官网:http://www.winpcap.org/devel.htm (注意别下载错了,要的 Developer's pack 不是Sourse Code)安装WinPcap_4_1_
2016-03-29 12:03:04
6233
2
转载 拖拽图片在Label上显示
原文:http://www.cppblog.com/biao/archive/2011/10/23/158940.html首先看下效果,左边是没有原始Label,右侧是把图片拖动到Label上显示效果。思路:1. 监视Label,当拖动鼠标到Label区域,Label接受拖放动作2. 当操作放动作时,取得放的内容3. 显示信息。代码如下:#include
2016-03-28 10:20:31
892
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人