自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Python】第十二章_外星人入侵_武装飞船

在本章中, 你将学习: 游戏开发计划的制定; 使用Pygame编写的游戏的基本结构; 如何设置背景色, 以及如何将设置存储在可供游戏的各个部分访问的独立类中; 如何在屏幕上绘制图像, 以及如何让玩家控制游戏元素的移动; 如何创建自动移动的元素, 如在屏幕中向上飞驰的子弹, 以及如何删除不再需要的对象; 如何定期重构项目的代码, 为后续开发提供便利。

2024-03-18 10:28:54 1029

原创 【开发环境】Ubuntu 18.04 搭建 QT编译环境详细步骤 【亲测有效】

Ubuntu 18.04 搭建 QT编译环境 详细步骤,亲测有效!包括下载安装包,Qt安装步骤以及解决安装过程中Ubuntu空间不足、安装分区管理工具gparted失败、以及Qt编译失败等问题。

2024-03-12 16:10:51 2245

原创 【办公工具】Windows 平台GIF录屏工具Gif123的下载和使用方法

本文介绍Windows 平台GIF录屏工具Gif123的下载和使用方法。Gif123 是一款 Windows 平台 GIF 录屏工具,采用 Aardio 语言开发,具有极简(只有 3 个主要按钮)、体积小巧(执行文件仅 720 KB)、绿色开源(免费免安装)等特点,使用非常简单,人人都可以轻松上手。

2024-03-07 17:33:23 479

原创 【QT】 QTreeView/QTreeWidget插入文件目录列表

演示QTreeView/QTreeWidget插入文件目录列表的方法。QTreeView插入指定磁盘下的目录,简单的方式就是利用QTreeView+QDirModel就可以显示了。QTreeWidget插入指定磁盘下的目录,先遍历目录文件夹名称,再插入。

2024-03-05 16:24:00 474

原创 【QT】Qt Charts概述

本文介绍QtCharts模块相关概念,图表的主要组成部分,包括标题,序列,坐标轴图例等,并用一个简单的QChart绘图程序进行演示QtCharts模块的应用。

2024-03-01 16:25:56 1195

原创 【QT】C/C++ 文件属性设置(隐藏、只读、加密等)方法和程序示例

C/C++ 文件属性设置(隐藏、只读、加密等)方法和程序示例,程序演示了在Windows系统和Linux系统下设置文件属性,windows系统已得到验证,Linux系统仅提供一个思路,待验证。

2024-02-29 16:54:46 1856

原创 【QT】QTextEdit 常用方法汇总

QTextEdit 常用方法汇总:包括删除行数、限制行数、判断行数、限制文本输入数量、光标移动、根据可见行数设置QTextEdit的控件高度。

2024-02-23 17:49:52 891

原创 【QT】Graphics View绘图架构

Qt为绘制复杂的可交互图形提供了Graphics View绘图架构,是一种基于图形项(Graphics Item)的模型/视图模式,与数据编辑与显示的Model/View模式类似。使用Graphics View架构可以绘制复杂的有几万个基本图形元件的图形,并且每个图形元件是可选择、可拖放和修改的,类似于矢量绘图软件的绘图功能。Graphics View架构主要由3个部分组成,即场景、视图和图形项。实例samp8_4只是演示了Graphics View的基本结构和3个坐标系的概念。

2024-02-05 16:30:31 1706

原创 【QT】坐标系统和坐标变换

QPainter在窗口上绘图的默认坐标系统是绘图设备的物理坐标。为了绘图的方便,QPainter提供了一些坐标变换的功能,通过平移、旋转等坐标变换,得到一个逻辑坐标系统,使用逻辑坐标系统在某些时候绘图更方便。为了实现更方便的坐标,QPainter还提供了视口(Viewport)和窗口(Window)坐标系,通过QPainter内部的坐标变换矩阵自动转换为绘图设备的物理坐标。使用窗口坐标的优点是,只需按照窗口坐标定义来绘图,而不用管实际的物理坐标范围的大小。

2024-01-30 15:05:20 1084

原创 【QT】QPainter基本绘图

本文介绍QPainter基本绘图的基础知识。

2024-01-28 08:30:00 1663

原创 【QT】文件目录操作

文件的读写是很多应用程序具有的功能,甚至某些应用程序就是围绕着某一种格式文件的处理而开发的,所以文件读写是应用程序开发的一个基本功能。 Qt为文件和目录操作提供了一些类,这些类基本涵盖了文件操作需要的主要功能,有些功能还在某些类里重复出现,例如QFile和QDir都具有删除文件、判断文件是否存在的功能。 实例samp7_3演示前述各种目录与文件操作类的主要功能。

2024-01-27 08:30:00 703

原创 【QT】二进制文件读写

Qt使用QFile和QDataStream进行二进制数据文件的读写。QFile负责文件的IO设备接口,即与文件的物理交互,QDataStream以数据流的方式读取文件内容或写入文件内容。 根据QDataStream保存文件时使用的数据编码的方式不同,可以保存为两种文件。(1)用Qt预定义编码保存各种类型数据的文件,定义文件后缀为“stm”。(2)标准编码数据文件,定义文件后缀为".dat”。 本节以实例samp7_2演示二进制文件的读写。

2024-01-26 08:30:00 1297

原创 【QT】文本文件读写

文本文件是指以纯文本格式存储的文件,例如用QtCreator编写的c++程序的头文件(.h文件)和源程序文件(.cpp文件)。HTML和XML文件也是纯文本文件,只是其读取之后需要对内容进行解析之后再显示。Qt提供了两种读写纯文本文件的基本方法,一种是用QFile类的IODevice读写功能直接进行读写,另一种是利用QFile和QTextStream结合起来,用流(Stream)的方法进行文件读写。实例samp7_1演示了这两种方法读写文本文件,实例不仅演示了如何打开文本文件,还有文件保存功能。

2024-01-25 08:30:00 1068

原创 【QT】Splash与登录窗口

一般的大型应用程序在启动时会显示一个启动画面,即Splash窗口。Splash窗口是一个无边对话框,一般显示一个图片,展示软件的信息。Splash窗口显示时,程序在后台做一些比较耗时的启动准备工作,Splash窗口显示一段时间后自动关闭,然后软件的主窗口显示出来。Qt有一个QSplashScreen类可以实现Splash窗口的功能,它提供了载入图片,自动设置窗口无边框效果等功能。本节设计的实例samp6_5,增加了一个Splash登录对话框,这个对话框结合了Splash窗口和登录界面两者的功能。

2024-01-24 08:30:00 854

原创 【QT】MDI应用程序设计

传统的应用程序设计中有多文档界面(Multi-documentInterface,MDI)应用程序,Qt为设计MDI应用程序提供了支持。本节的实例samp6_4是一个MDI应用程序,MDI应用程序就是在主窗口里创建多个同类型的MDI子窗口,这些MDI子窗口在主窗口里显示,并共享主窗口上的工具栏和菜单等操作功能,主窗口上的操作都针对当前活动的MDI子窗口进行。

2024-01-23 14:52:33 1324

原创 【QT】多窗体应用程序设计

本文介绍QT主要的窗体类及其用途,窗体类重要特性的设置以及多窗口应用程序的设计,并以实例samp6_3演示多窗口应用程序的设计。

2024-01-17 17:17:34 1610

原创 【QT】自定义对话框及其调用

在一个应用程序设计中,为了实现一些特定的功能,必须设计自定义对话框。自定义对话框的设计一般从QDialog继承,并且可以采用UI设计器可视化地设计对话框。对话框的调用一般包括创建对话框、传递数据给对话框、显示对话框获取输入、判断对话框单击按钮的返回类型、获取对话框输入数据等过程。 本文将通过实例samp6_2(可在资源列表下载)来详细介绍这些原理。

2024-01-16 17:03:08 1285

原创 【QT】标准对话框

本文介绍:Qt为应用程序设计提供了一些常用的标准对话框,如打开文件对话框、选择颜色对话框、信息提示和确认选择对话框、标准输入对话框等,用户无需再自己设计这些常用的对话框,这样可以减少程序设计工作量。

2024-01-12 15:45:34 1000

原创 【QT】自定义代理类

本文介绍我们为什么要使用自定义代理类,结合例如在samp5_4的实例实现为TableView增加自定义代理组件功能。将QSpinBox、QDoubleSpinBox、QComboBox委托给模型来代理,就可以实现在TableView中添加控件进行交互了。

2024-01-05 11:35:53 1268

原创 【QT】QStandardItemModel类的应用介绍

本文主要介绍了 QStandardItemModel类概述、常用方法,通过实例samp5_3演示QStandardltemModel的使用,可下载相应的程序资源进行学习,深入掌握QStandardltemModel的应用。

2024-01-04 16:01:15 1295

原创 【QT】QStringListModel类的应用介绍

QStringListModel作为QListView的数据模型,实现界面上显示和编辑字符串列表。实例samp5_2采用QStringListModel作为数据模型,QListView组件作为视图组件,演示了QStringListModel和QListView构成Model/View结构编辑字符串列表的功能。

2023-12-29 16:58:24 1312

原创 【Oracle】修改表结构

针对修改表结构常用功能给出相关示例,包括添加一个或多个列、修改列定义、删除一列或多列、重命名列和重命名表。

2023-12-23 20:33:52 713

原创 【QT】可执行文件图标由png格式手动改为ico格式,Qt程序报错原因及解决方案

针对可执行文件图标由Png格式手动改为Ico格式,Qt程序会报错的问题,给出原因及相应的解决方案。

2023-12-23 20:27:41 732

原创 【QT】QFileSystemModel类的应用介绍

本文是QFileSystemModel类的应用介绍,QFileSystemModel提供了一个可用于访问本机文件系统的数据模型。QFileSystemModel和视图组件QTreeView结合使用,可以用目录树的形式显示本机上的文件系统,如同Widnows的资源管理器一样。使用QFileSystemModeI提供的接口函数,可以创建目录、删除目录、重命名目录,可以获得文件名称、目录名称、文件大小等参数,还可以获得文件的详细信息。

2023-12-20 14:06:08 1232

原创 【QT】Model/View结构

本文介绍Model/View(模型/视图)结构,主要涉及Model/View基本原理、数据模型、视图组件、代理等相关概念

2023-12-19 14:51:23 1073

原创 【QT】QDockWidget控件的使用

QDockWidget控件的使用

2023-12-19 10:52:09 1859

原创 【QT】QTreeWidget控件的使用

本文介绍QTreeWidget控件的使用,包括QTreeWidget控件常用功能接口和实例功能介绍,且与相应的资源绑定,可进行调试学习。

2023-12-18 15:51:18 1906

原创 【QT】QListWidget控件的使用

本文介绍QListWidget 控件的使用,包含QListWidget类常用的属性和方法,QListWidget列表框的信号和槽,QListWidget 类常用操作示例(初始化列表、插入项、删除当前项和清空列表、遍历并选择项、QListWidgetItem常用信号等操作),QListWidget 类简单应用等内容。

2023-12-18 11:02:06 522

原创 【Oracle】创建表

Oracle数据库创建表的方法,以及常用创建表功能示例。

2023-12-15 23:09:18 2906

原创 CMD命令行如何快速定位到指定路径

我们在工作过程中,经常需要在控制台输入一些命令行,有些情况下需要在指定的路径下执行某些命令行,这就需要在cmd中定位到指定路径,下面介绍CMD快速定位到当前路径的两种方法:手动定位和快捷键定位方法。

2023-12-15 10:03:50 4040

原创 【QT】问题记录:NMAKE : fatal error U1077: “......\x64\cl.exe”和“......\x64\nmake.exe”: 返回代码“0x2” Stop.

QT在编译运行过程中遇到的问题记录以及解决方案

2023-12-14 14:21:43 862

原创 VS2019安装cbd调试器详细步骤

介绍VS2019安装cbd调试器详细步骤和遇到的问题及解决方案

2023-12-13 17:04:02 342

原创 【QT】时间日期与定时器

本文主要介绍了时间日期相关的类、日期时间数据与字符串之间的转换、QCaIendarWidget日历组件和定时器的使用。

2023-12-13 13:57:01 474

原创 【QT】QComboBox和QPlainTextEdit基本介绍和应用示例

QComboBox和QPlainTextEdit基本介绍和应用示例

2023-12-05 17:02:48 1272

原创 【QT】Qt常用数值输入和显示控件

Qt常用数值输入和显示控件介绍

2023-12-05 14:33:56 1356

原创 【QT】Qt编译时出现:Error: cannot open C:\Users\XXXX\AppData\Local\Temp\data.obj.5644.0.jom for write

记录Qt编译时出现的问题及解决方案

2023-12-04 14:19:46 332

原创 【QT】SpinBox的使用

QSpinBox和QDoubleSpinBox的基本属性和应用示例

2023-12-04 10:48:30 849

原创 【QT】字符串与输入输出

主要讲述了字符串和数值之间的转换,QString的常用方法以及在Qt界面设计UI中的应用

2023-12-01 16:50:05 849

原创 【QT】容器类的迭代

Qt两种迭代器类,Java类型的迭代器和STL类型的迭代器的基本介绍

2023-12-01 14:42:40 299

原创 【QT】容器类

Qt容器类的基本介绍,包括顺序类容器和关联容器类,针对每种容器的接口和基本用法做了说明

2023-11-30 16:01:14 474

Python第十二章-外星人入侵-武装飞船 项目程序代码

本资源是《python编程 从入门到实践》第十二章_外星人入侵_武装飞船项目 相关联的程序代码,账号的Python专栏文章会关联本资源。

2024-03-18

Python外星人入侵项目,pygame实现鼠标事件未生效.rar

针对书籍《Python编程:从入门到实践》中的外星人入侵项目,通过点击鼠标右键控制飞船向右移动,但是程序中的鼠标事件未生效的问题,给出调试方法、相应程序和解决方案。

2024-03-07

Python第十七章-数据可视化-使用API程序Demo资源文件.rar

在本章中, 你学习了: 如何使用API来编写独立的程序, 它们自动采集所需的数据并对其进行可视化; 使用GitHub API来探索GitHub上星级最高的Python项目, 还大致地了解了Hacker News API; 如何使用requests包来自动执行GitHub API调用, 以及如何处理调用的结果。 我们还简要地介绍了一些Pygal设置, 使用它们可进一步定制生成的图表的外观。该压缩包是本章程序的python demo 程序示例。

2024-02-20

QT QChart绘制折线图应用程序示例

实例samp9_2以绘制折线图为例,详细介绍图表各个部分的设置和操作,包括图表的标题、 图例、边距等属性设置,QLineSeries序列的属性设置,QValueAxis坐标轴的属性设置,以及图表的缩放。 实例samp9_2是一个主窗口继承自QMainWindow类的应用程序,界面的设计主要分为以下几个部分。 (1)工具栏:创建几个Action,并创建工具栏,实现图表数据刷新和缩放功能。 (2)主工作区图表视图:从组件面板放置一个QGraphics View组件作为视图组件,并用Promote方法升级为组件,命名为chartView。 (3)图表属性设置面板:左侧是一个QToolBox组件,分为3个操作面板,用于进行图表设置、曲线设置和坐标轴设置。

2024-02-05

Python第十七章-数据可视化-使用API.pdf

在本章中, 你学习了: 如何使用API来编写独立的程序, 它们自动采集所需的数据并对其进行可视化; 使用GitHub API来探索GitHub上星级最高的Python项目, 还大致地了解了Hacker News API; 如何使用requests包来自动执行GitHub API调用, 以及如何处理调用的结果。 我们还简要地介绍了一些Pygal设置, 使用它们可进一步定制生成的图表的外观。

2024-02-05

PythonLightenStyle 类设置基色代码报错.pdf

执行如下python程序,报错AttributeError: 'NoneType' object has no attribute 'startswith' ,原因是LightenStyle 类设置基色代码报错,详细解决方案可参考本文。

2024-02-05

Python第十六章-数据可视化-下载数据.rar

在本文中, 你将从网上下载数据, 并对这些数据进行可视化。 我们将访问并可视化以两种常见格式存储的数据: CSV 和JSON。 我们将使用Python模块csv 来处理以CSV(逗号分隔的值) 格式存储的天气数据, 找出两个不同地区在一段时间内的最高温度和最低温度。 然后, 我们将使用matplotlib根据下载的数据创建一个图表, 展示两个不同地区的气温变化。 在本章的后面, 我们将使用模块json 来访问以JSON格式存储的人口数据, 并使用Pygal绘制一幅按国别划分的人口地图。 阅读本章后, 你将能够处理各种类型和格式的数据集, 并对如何创建复杂的图表有更深入的认识。 要处理各种真实世界的数据集, 必须能够访问并可视化各种类型和格式的在线数据。

2024-02-03

Pythonpygal模块没有Worldmap怎么解决.pdf

pygal模块没有Worldmap,运行python程序报错:AttributeError: module 'pygal' has no attribute 'Worldmap' ,报错是因为之前的模块已经不存在了。导入pygal_maps_world.maps 再调用pygal_maps_world.maps.World()即可解决。

2024-02-02

Pythonpython中i18n不能使用怎么办.pdf

使用Pygal工具绘制各国人口地图时,从pygal.i18n模块导入COUNTRIES字典出错,报错:ModuleNotFoundError: No module named 'pygal.i18n' ,对于报错,原因是pygal.i18n 已经不存在了,现在已经更改成了 pygal_maps_world ,需要单独通过pip下载,我使用的是Python3,因此需要在终端使用 pip3 指令进行安装,安装成功之后,就可以正常调用国别码了,调用语句:“from pygal_maps_world.i18n import COUNTRIES” 。

2024-02-02

Python亲测免费-《python编程从入门到实践 第3版》 配套资源下载地址!.pdf

《python编程从入门到实践》书中有一些需要配套资源的,比如12章需要飞船图像ship.bmp和外星人图像,16章需要从网上下载天气数据。如果相关网站找不到下载途径,其实可以直接在书店下载全书的配套资源,包括全书代码和课后题答案。具体方法是:百度一下:python编程从入门到实践 图灵社区,点进去,在页面右侧,有一个“随书下载”的下拉列表,里面就有相关的全部资源。 亲测有效,下载成功,希望能让更多人方便的学习此书。

2024-02-02

QT QChart绘图基本原理应用程序示例

应用程序samp9_1说明QChart绘图的基本原理,创建一个基于QMainWindow的应用程序,主窗口上不放置任何组件。在主窗口类中只定义一个createChart()函数,在主窗口的构造函数中调用此函数,在createChart()函数里,首先创建一个QChartView对象chartView,再创建一个QChart对象chart,将chart在chartView里显示。 图表上用于显示数据的称为序列(series),这里使用折线序列QLineSeries,创建了两个QLineSeries类型的序列,并且将序列添加到chart中。 序列存储用于显示的数据,所以需要为直线序列添加平面数据点的坐标数据。程序将生成正弦和余弦函数的数据作为序列的数据。 序列还需要坐标轴,创建QValueAxis类型的坐标轴作为图表的轴和丫轴,调用QChart的setAxisX()和setAxisY()函数为两个序列分别设置'轴和轴。

2024-01-30

QT Graphics View结构的简单绘图应用程序示例

实例samp8_5是一个基于Graphics View结构的简单绘图程序,通过这个实例可以发现 Graphics View图形编程更多功能的使用方法。 这个实例程序具有如下的功能。 (1)可以创建矩形、椭圆、圆形、三角形、梯形、直线、文字等基本图形项。 (2)每个图形项都可以被选择和拖动。 (3)图形2项或整个整个视图可以缩放和旋转。 (4)图形项重叠时,可以调整前置或后置。 (5)多个图形项可以组合,也可以解除组厶 (6)可以删除选择的图形项。 (7)鼠标在视图上移动时,会在状态栏显示视图坐标和场景坐标。 (8)鼠标单击某个图形项时,会显示图形项的局部坐标,也会显示图形项的文字描述和编号。 (9)双击某个图形项时,会根据图形项的类型调用颜色对话框或字体对话框,设置图形项的填充颜色、线条颜色或文字的字体。 (10)选中某个图形项时,可以讲行按键操作,Delete键删除图形项,PgUp放大,PgDn缩小,空格键旋转90°,上下左右光标键移动图形项。

2024-01-30

QT Graphics View绘图框架应用程序示例

创建一个实例samp8_4是一个以QMainWindow为基类的窗口程序,实例程序samp8_4的主要功能包括以下几点。 (1)工作区是一个从QGraphicsView继承的自定义类QWGraphicsView,作为绘图的视图组件。 (2)创建一个QGraphicsScene场景,场景的大小就是图中的实线矩形框的大小。 (3)改变窗口大小,当视图大于场景时,矩形框总是居于图形视图的中央;当视图小于场景时,在视图窗口自动出现卷滚条。 (4)蓝色椭圆正好处于场景的中间,红色圆形位于场景的右下角。当图形项位詈不在场景的知形框中时,图形项也是可以显示的。 (5)当鼠标在窗口上移动时,会在状态栏显示当前光标位置的视图坐标和场景坐标,在某个图形项上单击鼠标时,还会显示在图形项中的局部坐标。 这个实例演示了Graphics View绘图几个类的基本使用方法,演示视图、场景和绘图项3个坐标系的关系,以及它们之间的坐标转换。

2024-01-30

Python第十五章-数据可视化-生成数据.pdf

数据可视化 指的是通过可视化表示来探索数据, 它与数据挖掘 紧密相关, 而数据挖掘指的是使用代码来探索数据集的规律和关联。 数据集可以是用一行代码就能表示的小型数字列表, 也可以是数以吉字节的数据。 漂亮地呈现数据关乎的并非仅仅是漂亮的图片。 以引人注目的简洁方式呈现数据, 让观看者能够明白其含义, 发现数据集中原本未意识到的规律和意义。 在本章中, 你学习了: 如何生成数据集以及如何对其进行可视化; 如何使用matplotlib创建简单的图表, 以及如何使用散点图来探索随机漫步过程; 如何使用Pygal来创建直方图,以及如何使用直方图来探索同时掷两个面数不同的骰子的结果。

2024-01-29

Python因缩进问题导致制表符错误的解决方法.pdf

Python程序因缩进问题导致制表符错误,运行程序报错:TabError: inconsistent use of tabs and spaces in indentation ,对于此错误,最常见的原因是没有缩进。当前用的文本编辑器Notepad++,有个设置,可以显示所有的字符的。查看配置:“视图 –> 显示符号 –> 显示空格与制表符”,这样就可以看到我们Python代码的到底有没有该缩进的都缩进了。

2024-01-29

Python在Windows系统中安装matplotlib,镜像错误安装失败的解决方法

在Windows系统中安装matplotlib,镜像错误安装失败,报错内容: ERROR: Could not find a version that satisfies the requirement fonttools>=4.22.0 (from matplotlib) (from versions: none) ERROR: No matching distribution found for fonttools>=4.22.0 该资源提供解决方法和亲测案例。

2024-01-29

QT-坐标系统和坐标变换-绘图叠加效果应用程序示例

运行samp8_3实例程序,演示了视口和窗口的使用方法。绘图设备的物理坐标是基本的坐标系,通过QPainter的平移、旋转等变换可以得到更容易操作的逻辑坐标。为了实现更方便的坐标,QPainter还提供了视口(Viewport)和窗口(Window)坐标系,通过QPainter内部的坐标变换矩阵自动转换为绘图设备的物理坐标。视口表示绘图设备的任意一个矩形区域的物理坐标,可以只选取物理坐标的一个矩形区域用于绘图。默认情况下,视口等于绘图设备的整个矩形区。窗口与视口是同一个矩形,只不过是用逻辑坐标定义的坐标系。窗口可以直接定义矩形区的逻辑坐标范围。

2024-01-26

QT-坐标系统和坐标变换-绘制曲线应用程序示例

运行samp8_3实例程序,展示画点和绘制曲线的绘图效果。 绘图设备的物理坐标是基本的坐标系,通过QPainter的平移、旋转等变换可以得到更容易操 作的逻辑坐标。为了实现更方便的坐标,QPainter还提供了视口(Viewport)和窗口(Window)坐标系,通过QPainter内部的坐标变换矩阵自动转换为绘图设备的物理坐标。视口表示绘图设备的任意一个矩形区域的物理坐标,可以只选取物理坐标的一个矩形区域用于绘图。默认情况下,视口等于绘图设备的整个矩形区。窗口与视口是同一个矩形,只不过是用逻辑坐标定义的坐标系。窗口可以直接定义矩形区的逻辑坐标范围。

2024-01-26

QT-坐标系统和坐标变换-绘制三个五角星应用程序示例

运行samp8_2实例程序,展示绘图效果,第1个是原始的五角星;第2个是缩小为0.8倍,顺时针旋转90度的五角星;第3个是逆时针旋转145度的五角星。这个程序中使用到了QPainterPath和QPainter的坐标变换功能。

2024-01-26

QT QPainter基本绘图应用程序示例

Qt的绘图系统使用户可以在屏幕或打印设备上用相同的API绘图,绘图系统基于QPainter、QPaint Device和QPaintEngine类。QPainter是用来进行绘图操作的类,QPaintDevice是一个可以使用QPainter进行绘图的抽象的二维界面,QPaintEngine给QPainter提供在不同设备上绘图的接口。QPaintEngine类由QPainter和QPaintDevice内部使用,应用程序一般无需和QPaintEngine打交道,除非要创建自己的设备类型。 一般的绘图设备包括QWidget、QPixmap、QImage等,这些绘图设备为QPainter提供一个"画布"。 为演示QPainter绘图的基本功能,创建一个Qt Widget Application项目samp8_1,并选择窗口基类为QWidget,自动创建窗体。创建后的项目有一个Widget类,为了简化代码功能,Widget窗口里不再放置任何其他组件,只用来绘图。

2024-01-24

QT文件目录操作应用程序示例

Qt为文件和目录操作提供了一些类,利用这些类可以方便地实现一些操作。Qt提供的与文件和目录操作相关的类包括以下几个。 QCoreApplication:用于提取应用程路径、程序名等文件信息。 QFiIe:除了打开文件操作外,QFiIe还有复制文件、删除文件等功能。 QFileInfo:用于提取文件的信息,包括路径、文件名、后缀等。 QDir:用于提取目录或文件信息,获取一个目录下的文件或目录列表,创建或删除目录和文件,文件重命名等操作。 QTemporaryDir和QTemporaryFiIe:用于创建临时目录和临时文件。 QFileSystemWatcher:文件和目录监听类,监听目录下文件的添加、删除等变化,监听文件修改变化。 这些类基本涵盖了文件操作需要的主要功能,有些功能还在某些类里重复出现,例如QFile和QDir都具有删除文件、判断文件是否存在的功能。 实例samp7_3演示了各种目录与文件操作类的主要功能。

2024-01-24

QT二进制文件读写应用程序示例

除了文本文件之外,其他需要按照一定的格式定义读写的文件都称为二进制文件。每种格式的二进制文件都有自己的格式定义,写入数据时按照一定的顺序写入,读出时也按照相应的顺序读出。例如地球物理中常用的SEG-Y格式文件,必须按照其标准格式要求写入数据才符合这种文件的格式规范,读取数据时也需要按照格式定义来读出。 Qt使用QFile和QDataStream进行二进制数据文件的读写。QFile负责文件的IO设备接口,即与文件的物理交互,QDataStream以数据流的方式读取文件内容或写入文件内容。 本节以实例samp7_2演示二进制文件的读写.

2024-01-24

QT文本文件读写应用程序示例

文本文件是指以纯文本格式存储的文件,例如用QtCreator编写的c++程序的头文件(.h文件)和源程序文件(.cpp文件)。HTML和XML文件也是纯文本文件,只是其读取之后需要对内容进行解析之后再显示。 Qt提供了两种读写纯文本文件的基本方法,一种是用QFile类的IODevice读写功能直接进行读写,另一种是利用QFile和QTextStream结合起来,用流(Stream)的方法进行文件读写。 实例samp7_1演示了这两种方法读写文本文件,实例不仅演示了如何打开文本文件,还有文件保存功能。

2024-01-23

Python在Geany中调用matplotlib绘图时出现attributeerror错误

使用matplotlib绘制一个简单的折线图, 再对其进行定制, 以实现信息更丰富的数据可视化。 我们将使用平方数序列1、 4、 9、 16和25来绘制这个图表。 但在Geany中调用matplotlib绘图时出现attributeerror :module ‘numbers’has no attribute “Integral"错误。 原因是:同一个python代码文件夹里有一个名为numbers的代码文件(可能是自己之前的代码文件命名为numbers)。在调用matplotlib时,出现了混乱,方法:把自己编写的numbers 的文件删除或者把原来的numbers文件重命名后就可以执行了。

2024-01-23

Python第十一章-测试代码.pdf

编写函数或类时, 还可为其编写测试。 通过测试, 可确定代码面对各种输入都能够按要求的那样工作。 测试让你信心满满, 深信即便有更多的人使用你的程序, 它也能正确地工作。 在程序中添加新代码时, 你也可以对其进行测试, 确认它们不会破坏程序既有的行为。 程序员都会犯错, 因此每个程序员都必须经常测试其代码, 在用户发现问题前找出它们。 在本章中, 你将学习如何使用Python模块unittest 中的工具来测试代码。 你将学习编写测试用例, 核实一系列输入都将得到预期的输出。 你将看到测试通过了是什么样子, 测试未通过又是什么样子, 还将知道测试未通过如何有助于改进代码。 你将学习如何测试函数和类, 并将知道该为项目编写多少个测试。

2024-01-23

Python第十章-文件和异常.pdf

在本章中, 你将学习处理文件, 让程序能够快速地分析大量的数据; 你将学习错误处理, 避免程序在面对意外情形时崩溃; 你将学习异常 , 它们是Python创建的特殊对象, 用于管理程序运行时出现的错误; 你还将学习模块json , 它让你能够保存用户数据, 以免在程序停止运行后丢失。 学习处理文件和保存数据可让你的程序使用起来更容易: 用户将能够选择输入什么样的数据, 以及在什么时候输入; 用户使用你的程序做一些工作后, 可将程序关闭, 以后再接着往下做。 学习处理异常可帮助你应对文件不存在的情形, 以及处理其他可能导致程序崩溃的问题。 这让你的程序在面对错误的数据时更健壮——不管这些错误数据源自无意的错误, 还是源自破坏程序的恶意企图。 你在本章学习的技能可提高程序的适用性、 可用性和稳定性。

2024-01-19

Python第九章-类的基础知识.pdf

面向对象编程 是最有效的软件编写方法之一。 在面向对象编程中, 你编写表示现实世界中的事物和情景的类, 并基于这些类来创建对象。 编写类时, 你定义一大类对象都有的通用行为。 基于类创建对象 时, 每个对象都自动具备这种通用行为, 然后可根据需要赋予每个对象独特的个性。 使用面向对象编程可模拟现实情景, 其逼真程度达到了令你惊讶的地步。 根据类来创建对象被称为实例化 , 这让你能够使用类的实例。 在本章中, 你将编写一些类并创建其实例。 你将指定可在实例中存储什么信息, 定义可对这些实例执行哪些操作。 你还将编写一些类来扩展既有类的功能, 让相似的类能够高效地共享代码。 你将把自己编写的类存储在模块中, 并在自己的程序文件中导入其他程序员编写的类。 理解面向对象编程有助于你像程序员那样看世界, 还可以帮助你真正明白自己编写的代码: 不仅是各行代码的作用, 还有代码背后更宏大的概念。 了解类背后的概念可培养逻辑思维, 让你能够通过编写程序来解决遇到的几乎任何问题。

2024-01-18

Python第八章-函数基础知识.pdf

在本章中, 你将学习编写函数 。 函数是带名字的代码块, 用于完成具体的工作。 要执行函数定义的特定任务, 可调用该函数。 需要在程序中多次执行同一项任务时, 你无需反复编写完成该任务的代码, 而只需调用执行该任务的函数, 让Python运行其中的代码。 你将发现, 通过使用函数, 程序的编写、 阅读、 测试和修复都将更容易。 在本章中, 你还会学习向函数传递信息的方式。 你将学习如何编写主要任务是显示信息的函数, 还有用于处理数据并返回一个或一组值的函数。 最后, 你将学习如何将函数存储在被称为模块的独立文件中, 让主程序文件的组织更为有序。

2024-01-18

Python第七章-用户输入和while循环.pdf

大多数程序都旨在解决最终用户的问题, 为此通常需要从用户那里获取一些信息。 例如, 假设有人要判断自己是否到了投票的年龄, 要编写回答这个问题的程序, 就需要知道用户的年龄, 这样才能给出答案。 因此, 这种程序需要让用户输入 其年龄, 再将其与投票年龄进行比较, 以判断用户是否到了投票的年龄, 再给出结果。 在本章中, 你将学习如何接受用户输入, 让程序能够对其进行处理。 在程序需要一个名字时, 你需要提示用户输入该名字; 程序需要一个名单时, 你需要提示用户输入一系列名字。 为此, 你需要使用函数input() 。 你还将学习如何让程序不断地运行, 让用户能够根据需要输入信息, 并在程序中使用这些信息。 为此, 你需要使用while 循环让程序不断地运行, 直到指定的条件不满足为止。 通过获取用户输入并学会控制程序的运行时间, 可编写出交互式程序。

2024-01-18

QT实现Splash与登录界面的应用程序示例

一般的大型应用程序在启动时会显示一个启动画面,即splash窗口。splash窗口是一个无 边对话框,一般显示一个图片,展示软件的信息。splash窗口显示时,程序在后台做一些比较耗时的启动准备工作,splash窗口显示一段时间后自动关闭,然后软件的主窗口显示出来。Qt有一个QSplashScreen类可以实现Splash窗口的功能,它提供了载入图片,自动设置窗口无边框效果等功能。 samp6_5实例演示如下的一些功能的实现方法: 如何实现splash特点的无边框对话框; 如何设计用鼠标拖动无边框的对话框; 如何使用QSettings类存储用户名、密码等信息; 如何用QCryptographicHash类进行字符串加密; 如何根据登录输入状况确定启动主窗口或终止程序运行。

2024-01-17

QT MDI应用程序设计示例

传统的应用程序设计中有多文档界面(Multi-documentInterface,MDI)应用程序,Qt为设计MDI应用程序提供了支持。 实例samp6_4是一个MDI应用程序,MDI应用程序就是在主窗口里创建多个同类型的MDI子窗口,这些MDI子窗口在主窗口里显示,并共享主窗口上的工具栏和菜单等操作功能,主窗口上的操作都针对当前活动的MDI子窗口进行。 设计MDI应用程序需要在主窗口工作区放置一个QMdiArea作为子窗体的容器。实例samp6_4主窗口的工作区使用一个QMdiArea组件,实例的子窗口类是QFormDoc,是一个使用QPIainTextEdit进行简单文本显示和编辑的窗体。

2024-01-17

QT多窗口应用程序设计示例

实例samp6_3演示多窗口应用程序的设计,程序的主窗口类是QWMainWindow,从QMainWindow继承。主窗口有一个工具栏,4个创建窗体的按钮以不同方式创建和使用窗体。主窗体工作区绘制一个背景图片,有一个tabWidget组件,作为创建窗体的父窗体。没有子窗体时,tabWidget不显示。

2024-01-17

QT自定义对话框及采用信号槽机制与主窗口交互的应用程序示例

在一个应用程序设计中,为了实现一些特定的功能,必须设计自定义对话框。自定义对话框的设计一般从QDialog继承,并且可以采用UI设计器可视化地设计对话框。对话框的调用一般包括创建对话框、传递数据给对话框、显示对话框获取输入、判断对话框单击按钮的返回类型、获取对话框输入数据等过程。 实例samp6_2CustomDialogsSignal.rar详细介绍了这些原理。实例samp6_2CustomDialogsSignal.rar的主窗口采用QTableView和QStandardItemModel、QItemSelectionModel构成一个通用的数据表格编辑器,设计了3个对话框,分别具有不同的功能,并且展示对话框不同调用方式的特点。 samp6_2CustomDialogs.rar应用程序设计的QWDialogLocate对话框与主窗口之间的交互采用互相引用的方式,实现起来比较复杂。samp6_2CustomDialogsSignal.rar应用程序实现方式就是利用Qt的信号与槽机制,设计相应的信号和槽,将信号与槽关联起来,在进行某个操作时发射信号,槽函数自动响应。

2024-01-16

QT自定义对话框及其调用应用程序示例

在一个应用程序设计中,为了实现一些特定的功能,必须设计自定义对话框。自定义对话框的设计一般从QDialog继承,并且可以采用UI设计器可视化地设计对话框。对话框的调用一般包括创建对话框、传递数据给对话框、显示对话框获取输入、判断对话框单击按钮的返回类型、获取对话框输入数据等过程。 实例samp6_2详细介绍了这些原理。实例samp6_2的主窗口采用QTableView和QStandardItemModel、QItemSelectionModel构成一个通用的数据表格编辑器,设计了3个对话框,分别具有不同的功能,并且展示对话框不同调用方式的特点。

2024-01-16

Oracle数据库客户端安装手册-V1.0.docx

本文介绍Oracle数据库客户端详细的安装步骤,每个步骤都有相应的说明和截图,主要包括Oracle数据库客户端安装和数据库客户端配置,初次使用Oracle数据库时,可以根据本教程步骤进行Oracle数据库客户端安装。

2024-01-16

Python第六章-字典的使用、遍历和嵌套

在本章中, 你将学习 如何定义字典, 以及如何使用存储在字典中的信息; 如何访问和修改字典中的元素, 以及如何遍历字典中的所有信息; 如何遍历字典中所有的键-值对、 所有的键和所有的值; 如何在列表中嵌套字典、 在字典中嵌套列表以及在字典中嵌套字典。 理解字典后, 你就能够更准确地为各种真实物体建模。 你可以创建一个表示人的字典, 然后想在其中存储多少信息就存储多少信息: 姓名、 年龄、 地址、 职业以及要描述的任何方面。 你还能够存储任意两种相关的信息, 如一系列单词及其含义, 一系列人名及其喜欢的数字, 以及一系列山脉及其海拔等。

2024-01-15

Python第五章-if 语句、if-else 语句和if-elif-else 结构

在本章中, 你学习了如何编写结果要么为Ture 要么为False 的条件测试。 你学习了如何编写简单的if 语句、 if-else 语句和if-elif-else 结构。 在程序中, 你使用了这些结构来测试特定的条件, 以确定这些条件是否满足。 你学习了如何在利用高效的for 循环的同时, 以不同于其他元素的方式对特定的列表元素进行处理。 你还再次学习了Python就代码格式方面提出的建议, 这可确保即便你编写的程序越来越复杂, 其代码依然易于阅读和理解。

2024-01-15

sizeof 和strlen 区别.pdf

总结sizeof 和strlen的区别: sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的空间,返回值跟对象、结构、数组所存储的内容没有关系。 strlen(...)是函数,要在运行时才能计算。参数必须是字符型指针(char*)。当数组名作为参数传入时,实际上数组就退化成指针了。 strlen(...)的功能是:返回字符串的长度。该字符串可能是自己定义的,也可能是内存中随机的,该函数实际完成的功能是从代表该字符串的第一个地址开始遍历,直到遇到结束符NULL。返回的长度大小不包括NULL。

2024-01-12

QT标准对话框应用程序示例

Qt为应用程序设计提供了一些常用的标准对话框,如打开文件对话框、选择颜色对话框、信 息提示和确认选择对话框、标准输入对话框等,用户无需再自己设计这些常用的对话框,这样可以减少程序设计工作量。实例samp6_1演示使用这些对话框,下方的文本框显示打开文件的文件名或一些提示信息,某些对话框的输入结果可应用于文本框的属性设置,如字体和颜色。

2024-01-12

Python第四章-操作列表.pdf

在本文中, 你将学习如何遍历 整个列表, 这只需要几行代码, 无论列表有多长。 循环让你能够对列表的每个元素都采取一个或一系列相同的措施, 从而高效地处理任何长度的列表, 包括包含数千乃至数百万个元素的列表。学习内容主要包括如何高效地处理列表中的元素; 如何使用for 循环遍历列表, Python如何根据缩进来确定程序的结构以及如何避免一些常见的缩进错误; 如何创建简单的数字列表, 以及可对数字列表执行的一些操作; 如何通过切片来使用列表的一部分和复制列表。 你还学习了元组(它对不应变化的值提供了一定程度的保护) , 以及在代码变得越来越复杂时如何设置格式, 使其易于阅读。

2024-01-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除