自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

苏州-青蛙

跨平台C++/Qt客户端开发,部分音视频处理以及医学三维重建的经验

  • 博客(84)
  • 收藏
  • 关注

原创 Windows网络库头文件包含问题

用WindowsApi做网络通信,windows.h和winsock2.h这两头文件位置不当经常报重定义。查了下别人博客,说的很详细。https://blog.csdn.net/pragma_g/article/details/83654187问题:彻底无语了,不小心某个文件包含了windows.h头文件,而windows.h文件里面包含着winsock.h文件,如果你下次使用winsock2.h文件时,位置不对,然后编译器会给你一大堆重定义错误问题。初级解决办法:把winsock2.h

2020-06-30 17:07:02 475

原创 头文件命名空间问题

做项目时,不小心在头文件加了using namespace xx。前置声明类,然后报错,虽然之前一直知道不能这么写,但还是想了解其原因,下面这篇博文写的很不错,部分引用他。https://blog.csdn.net/t11383/article/details/89035076在这里,我毫不回避地说了这句话:我再也不想在任何头文件中看到“using namespace xxx;”了作为一个开发者/团队领导者,我经常会去招聘新的项目成员,有时候也帮助其他组的人来面试应聘者。作为应聘流程之.

2020-06-30 14:50:53 371

原创 QTabWidget样式表设置问题

QTableWidget 去除上面标签for (int i = 0; i < ui.tabWidget->findChildren<QTabBar*>().size();i++) { ui.tabWidget->findChildren<QTabBar*>().at(i)->hide(); } //每...

2020-06-30 11:14:10 416 1

原创 VTK-VTK灰度图转为Qimage

int dim[3]; reader->GetOutput()->GetDimensions(dim); qDebug() << dim[0] << dim[1] << dim[2]; QImage m_image( dim[0], dim[...

2020-06-30 11:13:35 190

原创 C++&&QT基础多线程总结

多线程比较重要的模块了可以这样理解,加锁的就是安全的,不加锁的就是不安全的。2.到底是什么意思呢?如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。好比你有两个一模一样的银行卡(账户一样,余额一样,当然现实中是没有的),假如卡上余额1000块,而...

2020-06-30 11:11:16 258 1

原创 qt初学者:布局、坐标转换、位置管理

研究了一下布局首先把控件水平 布局 或者垂直布局,用工具栏的条子分 。 各个控件比例可以看 layout属性中的layoutStretch来控制比例。最后最后,最重要的,右击空白画布选择总体布局(垂直,水平,栅格,自己选),自己思考,总归有符合的总体布局,其中可以通过留空白器和分裂器微调,这样可以满足所有的布局需求了,而且可以实现任何窗口自适应变化,其中可能要调一下控件属性中的expan...

2020-06-30 11:06:10 208

原创 Qt项目焦点设置

焦点问题1.QWidget:focus{outline: none;}/*remove all QWidget's focus border*/ 在最外层QWidget套一层这个 可以去除所有子widget的虚线框2焦点模式3.各个界面设置焦点所有的控件用里的123 设置整体的顺序 之后显示几个可以设置焦点的顺序 就会应用那几个 QT这点做的还是十分智能的。这个项目焦...

2020-06-30 11:04:45 816

原创 2019.6.12 QLabel安装事件过滤器后上面的文字消失 

QLabel安装事件过滤器后上面的文字消失 :ui.port_operat_label->installEventFilter(this);bool eventFilter(QObject *obj, QEvent *event);//事件处理bool TestBluetoothMode::eventFilter(QObject *obj, QEvent *event){...

2020-06-30 11:02:50 267

原创 QWT之折线图基本使用

折线图呢分为外框架 ui.qwtPlot 类名也是这个和曲线类QwtPlotCurve *qwt_curve;以下是各种设置直接复制了//设置坐标范围以及刻度步长 this->qwt_plot->setAxisScale(QwtPlot::yLeft, -100, 450, 150); this->qwt_plot->setAxisSc...

2020-06-30 11:01:54 506

转载 C++ char*和char[]问题

本人总结:char* a="adas"; a直接指向常量区里的那块内存,用*s=‘a’修改常量失败。char a[100]="adas",从常量拷贝一份到栈上了 可以修改。在一次做题中,遇到的改错题,编译是成功的,但是运行会失败。实现hallo,world变成hello, world功能图 1为什么会挂掉?这个主要涉及到内存分配问题。在c/c++中,一个程序编译后占用...

2020-06-30 11:00:08 500

原创 2019.9.25QChart 曲线使用opengl加速闪烁的问题

遇到的问题,直接贴别人截图,转载链接如下:

2020-06-30 10:57:53 868

原创 C++基础之static作用

1.先来介绍它的第一条也是最重要的一条:隐藏。(static函数,static变量均可)当同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。举例来说明。同时编译两个源文件,一个是a.c,另一个是main.c。//a.cchar a = 'A'; // global variablevoid msg(){ printf("Hello\n")...

2020-06-30 10:56:09 283

原创 C++主要类型的长度(32位与64位系统比较)(转载)

1、源代码#include <iostream>using namespace std;int main(int argc, const char * argv[]){ cout << "sizeof(char) = " << sizeof(char) << endl; cout << "size...

2020-06-30 10:55:03 324

原创 utf8与std::string字符编码转换

1.utf8转std::string转换过程:先将utf8转双字节Unicode编码,再通过WideCharToMultiByte将宽字符转换为多字节。//-----------------------------------------------------------------------std::string UTF8_To_string(const std::string &...

2020-06-30 10:53:46 877 2

原创 vtk窗口导致Qt程序Ui卡死现象

主界面 加void RXVirtualStation::showEvent(QShowEvent *e){ this->setAttribute(Qt::WA_Mapped); QWidget::showEvent(e);}事件这一块 以后再看

2020-06-30 10:53:31 968 3

原创 Vs运行库方式的选择

关于常规页mfc的使用

2020-06-30 10:51:52 264

原创 QPainter中级用法

一、坐标系简介。Qt中每一个窗口都有一个坐标系,默认的,窗口左上角为坐标原点,然后水平向右依次增大,水平向左依次减小,垂直向下依次增大,垂直向上依次减小。原点即为(0,0)点,然后以像素为单位增减。例如:void Dialog::paintEvent(QPaintEvent *){QPainter painter(this);painter.setBrush(Qt:...

2020-06-30 10:51:29 943

转载 c++基础之explicit关键字

矮油~C++ explicit关键字详解首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).那么显示声明的构造函数和隐式声明的有什么区别呢? 我们来看下面的例子:class CxS...

2020-06-30 10:49:38 72

原创 软件开发模型

敏捷开发,首先把客户最关注的软件原型先做出来,交付或者上线,在实际场景中去修改弥补需求中的不足,快速修改,再次发布版本。再次上线或者交付。通过一些敏捷实践方式,细化story,可以提供更小的迭代。如此循环,直到用户(客户)满意。适用于需求不明确的项目、创新性的项目或者需要抢占市场的项目。瀑布式开发,要求明确的需求,大家按照需求一步步做好规划,在项目运作过程中严格产出各种文档,按着流程一步步走下...

2020-06-30 10:48:42 138

原创 学习WinApi一些问题

要区分宽字符和窄字符 winapi很多参数需要传入宽字符#pragma execution_character_set("utf-8") 将文本中string qstring 都用utf8编码保存或者 string=u8(xxxxx); 和上面效果一样windows路径要么全用\\ 要么全用/ 不要乱搞下面设置成unicode字符集 这样 所有不加A或者W的...

2020-06-30 10:47:14 100

转载 Qt文件监控QFileSystemWatcher

原文链接:https://blog.csdn.net/liang19890820/article/details/51849252简述QFileSystemWatcher类用于提供监视文件和目录修改的接口。QFileSystemWatcher通过监控指定路径的列表,监视文件系统中文件和目录的变更。调用addPath()函数可以监控一个特定的文件或目录。如果需要监控多个路径,可以...

2020-06-30 10:46:05 1072

原创 复习一下计算机网络基础

大三学校开过这课 全忘了子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并...

2020-06-30 10:45:36 113

原创 Tcp连接时三次握手的问题和思考

我自己用通俗的话理解一下:1.为什么建立连接时不用二次握手?而要三次客户端和服务端在交流的过程种 客户端先向服务端请求建立连接,服务端收到后,服务端置为连接状态,发消息给客户端,客户端也连接,这就是二次握手。会出现一个什么问题呢? 服务端收到消息建立连接了但是确发送不了消息给客户端 客户端那边收不到消息,延时久了,自动就断开 重置为未连接状态。而服务端确是连接上的状态,他无法判断对...

2020-06-30 10:44:58 277

原创 Tcp断线的四次握手的思考

和三次握手有什么不一样?服务端收到断开连接报文 不会马上断开 会告诉客户端自己知道了 但我还有报文要发送 我过会再发一个自己的断开连接报文,这就是两个 比三次握手多一次另外还有2ms的等待要注意下...

2020-06-30 10:44:46 110

原创 QString用正则表达式子过滤

QRegExp qreg_exp("[^A-Za-z0-9\u4e00-\u9fa5]"); //字母和中文和数字以外的字符//^顶在前面 表示除。。。之外// A-Z 代表大写 a-z代表小写字符 0-9表示数字 \u4e00-\u9fa5表示所有中文直接连在一起表示&& 在最前面加个^ 表示除这些字符以外的字符 QString new_......

2020-06-30 10:44:13 3330

原创 修改电脑mac地址

电脑网卡的mac地址是可以修改的修改完禁用适配器 在开启 在cmd测试一下mac地址是否改变有时候修改不了可能是mac地址名称规则不对

2020-06-30 10:44:00 205

转载 使用QTcpSocket的一些总结

QTcpSocket类的方法connectToHost会泄露内存,即使把调用这个方法的QTcpSocket实例delete掉,内存也不会释放!反复connectToHost会导致段错误,十分危险。必须控制connectToHost的使用次数! 连接服务器 m_tcpSocket->connectToHost(“127.0.0.1”, 9877); connected = m_t...

2020-06-30 10:43:49 376

原创 C++Primer阅读之命名空间

这可以解释为什么qt程序中有那么多 namespace Ui{} 第一次是创建 第二次则是为该命名空间增加新的成员命名空间可以嵌套所以之后写个人库都可以用命名空间将类写到里面去...

2020-06-30 10:43:21 163

原创 QAxObject写word文档和次线程操作

不废话先贴代码 别忘了装office{ HRESULT r = OleInitialize(0); if (r != S_OK && r != S_FALSE) { qWarning("Qt: Could not initialize OLE (error %x)", (unsigned int)r); }...

2020-06-30 10:42:26 861

原创 vs-exe添加图标并自适应图标放大分辨率

exe添加图标 右键项目添加,资源,资源窗口弹出来的时候 导入ico 注意!!这个ico是里面含有多张的Ico 第一张格式一定要标准 我试了我都是bmp格式 其他格式要慢慢试一下 我第一张是Png就自适应不了大小。 我用这个可以制作(不要勾选他所vista),用一张256的就自动做出序列。...

2020-06-30 10:42:04 1082

翻译 2019.7.29个人对字符编码的理解

QString 保存的永远是一段二进制的一串东西 以及是这个二进制的编码写进入将 任意字符用编码加工 写成二进制写进去读出来 要按utf gbk 等等格式读出来总之 读取 写入都要严格按照编码来另外读window上txt要QString str = txtInput.readLine().toLocal8Bit(); 以这个编码存到QString去GBK就...

2020-06-30 10:41:34 89

原创 初学使用QT信号和槽的一些基础写法问题记录

1.connect里SIGNAL 和 PLOT函数里不写形参,只写类型。2.信号参数大于或者等于槽函数里的参数数量3.必须是继承QOBject 并且写宏Q_OBJECT 才可以使用信号和槽4.自定义类型必须用 qRegisterMetaType<PreDataInputWin::CreatePreMode>("PreDataInputWin::CreatePre...

2020-06-30 10:41:00 106

原创 Vtk编程经验

最近在努力学习vtk目标:1.能做出所有花样的显示 2.熟悉vtk的管线机制 特别是内存如何管理记录每一条小技巧1. vtkDICOMImageReader读取得到的vtkimagedatareader->Delete() 则vtkimagedata也会被释放...

2020-06-30 10:40:03 397

原创 Qt 事件处理过程(转载)

它反映了包括Qt在内的GUI应用程序的消息处理模型:  (1) 用户操作界面,被操作系统内核空间中的设备驱动程序感知  (2) 设备驱动程序向操作系统的用户空间的GUI应用程序发出系统消息  (3) GUI应用程序将系统消息转换为信号,进而触发槽函数  在GUI应用程序中,一个核心且关键的操作就是将系统消息转换为信号,涉及到Qt的事件处理机制:  (1) Qt平台将系统底层...

2020-06-30 10:39:34 266

转载 c++/c 获取cpp文件行号跟文件名

编译器内置宏:先介绍几个编译器内置的宏定义,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息。ANSI C标准中有几个标准预定义宏(也是常用的):__LINE__:在源代码中插入当前源代码行号;__FILE__:在源文件中插入当前源文件名;__DATE__:在源文件中插入当前的编译日期__TIME__:在源文件中插入当前编译时...

2020-06-30 10:38:22 374

原创 QCharts专题

感觉用下来和qwt差不多,没什么难度记一个今天遇到的问题 曲线用QLineSeries 不要用QSplineSeries,QSplineSeries加载得超级慢!!!!!!//开始----------------------------------------------------------------------------------------------------...

2020-06-30 10:37:10 1182 4

原创 Qt读写txt简单版本

简单的qt读写一个txt配置文件用qt自带的方法写即可 不需要用我封装的那个winapi库 那个对要求较高的文件操作在使用。下面这个函数就是我读取一个配置文件的情况 包含了读写操作void CTLoginSetting::ReadLoginSettingFile(){ if (!QFile::exists(file_path)) { //创建默认文件...

2020-06-30 10:35:42 228

原创 string以及char* char[]各种用法总结

char* 这种类型内存都要预先设置的 在内存合适的基础上进行string所有操作会改变原字符串查找 find():在一个字符串中查找一个指定的单个字符或字符数组。如果找到,就返回首次匹配的开始位置;如果没有查找到匹配的内容,就返回string::npos。find_first_of():在一个目标串中进行查找,返回值是第一个与指定字符组中任何字符匹配的字符位置。如果没有查找...

2020-06-30 10:35:28 479

原创 Qt 事件处理(自己实验的理解)

1.父窗口和子窗口resize 和show的顺序2.当改变大小的时候

2020-06-30 10:35:17 267

原创 Qt自定义控件走过的坑

1.本想着当一个控件resizeEvent触发时将控件里的一切坐标都设置好,后来发现是我太天真了。事实就是第一次resizeEvent触发根本获取不到子控件的任何参数(坐标和大小),目前像这种自定义控件最好在showEvent中将一切设置好。 今天showevent中QTableWidget大小获取错误不知道为什么2.写圆形的这种控件要求直径必须是个圆 这就要求长和宽要是偶数 且两个都...

2020-06-30 10:34:56 1204 1

空空如也

空空如也

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

TA关注的人

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