- 博客(20)
- 资源 (1)
- 收藏
- 关注
原创 进制换算&位操作
1、负数转换成十六进制过程(补码),以-3为例: 首先转化为二进制 分为3步: a、首先将负数转换为对应的原码 -3的原码为(也就是+3转换成二进制后的字符串): 0000 0000 0000 0000 0000 0000 0000 0011 (多少组取决于计算机位数,此时为32位,8组) b、再将原码的每一位做取反操作得到反码。 取反操作:0变为1, 1变为0; 取反后的结果即为: 1111 1111 1111 1111 1111 1111 1111 1100 c、将反码+1得到补码 111
2021-11-09 17:50:29
308
原创 QT txt文件读写
QFile aFile(aFileName); if (!aFile.exists()) //文件不存在 return false; if (!aFile.open(QIODevice::ReadOnly | QIODevice::Text)) return false; QTextStream aStream(&aFile); aStream.setAutoDetectUnicode(true); //自动检测Uni...
2021-09-19 21:10:18
713
原创 QT串口通信
1、准备工作 .pro添加 QT += serialport 头文件 #include <QSerialPort> #include <QSerialPortInfo> 2、寻找空闲串口 void MainWindow::findFreePorts(){ QList<QSerialPortInfo> ports = QSerialPortInfo::availablePorts(); for (int i = 0; i < ports.size
2021-09-19 14:00:10
242
原创 Qt 自定义控件(类)使用方法
所谓自定义控件(类),不是布局管理器中的ui,而是通过自定义生成的控件(类)——即用代码实现的。 注意点: 一、提升法 1、在UI界面建立一个控件,该控件基类和自定义控件的基类要一致 2.选中ui控件,右击–>提升为… 输入你自定义类的名称即可。 二、通过布局管理插入法 1、在程序中首先声明一个自定义类对象,如有个ClockWidget类,声明如下: ClockWidget *clock=new ClockWidget (this); 2、在UI界面拖入一个布局管理器(以对象名为“vertical
2021-09-16 13:45:37
1729
原创 python存储和读取
1、读取 with open('out25.txt','r') as f: fre = [] tx = [] T = [] for line in f: dd,cc,bb=line.split() T.append(float(bb)) tx.append(float(cc)) fre.append(float(dd)) T = array(T) tx = array(tx) fre = array(fre) 2、
2021-09-10 19:57:30
287
原创 QT信号相关
1、connect适用范围 connect()函数有且只能在QObject类里面和QObject派生类里面使用, 自己新建的类里面时选择的基类不是QObject类和其QObject派生类,而是Custom,使用connect()函数是无效的!!!,编译时一直报错。 因此新建类可以从Qobject,Qwidget和Qmainwindow里选择为基类。 当然,我们新建工程比如widget,mainwindow,dialog都是QObject的派生类,所以可以直接使用connect()函数,实现信号与槽机制
2021-09-10 19:44:22
233
原创 QT事件之鼠标事件(1)
Qt5.QEvent类 QTimerEvent 定时器事件 QMouseEvent 鼠标事件 QWheelEvent 滑动鼠标滑轮事件 QTabletEvent QKeyEvent 键盘事件 QFocusEvent 焦点事件 QPaintEvent 绘画事件 QMoveEvent 移动事件 QResizeEvent 窗口尺寸大小改变事件 QCloseEvent 关闭事件 QShowEvent 显示事件 QHideEvent 隐藏事件 QContextM
2021-09-01 19:35:44
393
原创 QT控件自适应布局
在Qt中,窗口里面用来布局的控件主要通过以下途径: layouts方式 通过选择以上四种不同选项,形成不同的Layout风格常见如下。 水平布局: 垂直布局 还有栅格布局。实际操作中当我们把所有部件布局完成后可能是这个样子的 或者这个样子的 部件尺寸大小不一,间距及位置错乱。而且程序运行后随着窗口的变化,部件大小及彼此间的协调不成比例,影响美观。 首先我们可以利用layout的属性调节部件及布局之间的尺寸比例。 如上所示,每个布局属性包括layout之间的空隙设置如 layoutLeftMarg
2021-09-01 17:35:52
2487
原创 ECMWF时间序列处理
ECMWF时间采用的是gregorian时间,需要将其转换为PYTHON下的专有时间序列才能完成画图操作。 具体时间格式说明如下: int32 time(time) units: hours since 1900-01-01 00:00:00.0 long_name: time calendar: gregorian unlimited dimensions: current shape = (744,) #取出时间 time=f['time'][:] #将时间转化为人类可读时间 time1=nu
2021-05-31 12:30:29
1046
1
原创 subplots用法总结
Figure & Axes 例如:fig, axes = plt.subplots(2, 2) # 此处是一个2*2的图 axes[0,0] 代表第一个子图的坐标属性(类似上图中多Axes1) . . axes[2,2] 代表第四个子图的坐标属性(类似上图中多Axes4) 如何画各个子图 ax.plot() #还有另一种画图方法plt.plot(),此处忽略。 接上图例,可写成,axes[0,1].plot( ) 多个子图一起合并到一个图上。 import numpy as np impo.
2021-05-25 13:55:01
2364
原创 Python 无法用matplotlib来显示图像问题
一、警告信息: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure。 解决办法: 1,查看一下目前matplotlib的后端渲染器设置, import matplotlib as mpl print(mpl.get_backend()) 我的显示是“agg",agg不能将图像渲染出来的,所以需要设置为TkAgg。 import matplotlib
2021-04-26 14:07:31
781
2
转载 [Errno -101] NetCDF: HDF error: b‘weather.nc‘
链接在此 主要原因CDF4安装包太新,卸载新版本(1.5.5.1),安装旧版本(1.4.0)。 pip install netCDF4==1.4.0 解决!
2021-04-20 12:47:14
1282
原创 Windows系统下QT 程序打包发布注意事项
Windows系统下QT程序打包发布教程网上随处可见,大致分以下两步: 利用QT官网提供的工具windeployqt 生成执行程序(××.exe)的动态链接库。 详情参见QT5的程序打包发布的前半部分。最终会将可执行文件需要的库文件全部收集过来,这时候再点击可执行文件××.exe可顺利运行,也可拷贝到其他WINDOWS系统上运行。 利用Inno Setup工具对程序进行打包,生成相应的安装文件(俗称setup.exe)。 有时候会发现我们制作的安装文件安装后,程序运行会报错,无非就是缺少相应的库文件支持。
2021-03-17 18:19:25
288
原创 QT事件之resizeEvent事件触发(2)
主要是窗口resize调用或者其他导致窗口事件大小发生变化产生。 如果你想拖动主窗口的时候,能够让窗口中的组件随着窗口也能缩放的话,需要重写resizeEvent,原因在于,在构造之后,子窗口的大小就是固定的。 ...
2021-03-16 12:18:28
16895
原创 QT之arg()格式化输出
QT之arg()格式化输出 1、整型转Qstring QString QString::arg(int a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char( ’ ’ )) const 如将下面整型数据改成这样的时间字符串: 00:12:20 整型数据 int hour=1; int min=12; in sec=20; 代码如下: QString str = QString(%1:%2%3").arg(hour,2,
2021-03-11 14:40:55
3999
原创 QT 网络API请求失败之解决方法
QT 网络API请求失败之解决方法 最近做一个天气预报的小程序,需要对网站API接口的Json数据进行解析,处理过程中发现以“HTTP//”开头的网络请求没有问题,而以“HTTPS//”开头的网络请求经运行产生以下错误: qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method qt.network.ssl: QSslSocket: cannot call unresolved function SSL
2021-03-10 17:24:35
2771
1
原创 QT main()函数详解
Qt项目中main主函数详解 参照博客 https://blog.youkuaiyun.com/weixin_38293453/article/details/104153930 main() 函数是应用程序的入口。它的主要功能是创建应用程序,创建窗口,显示窗口,并运行应用程序,开始应用程序的消息循环和事件处理。示例如下: #include “widget.h” #include int main(int argc, char *argv[]) { QApplication a(argc, argv); //定义并
2021-03-08 18:33:47
2627
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅