学习心得
YorkChen1989
做了半辈子Qt。。。。
展开
-
关于qt如何显示svg矢量图片中的中文
今天终于拿到svg格式的矢量图,之前使用开发板最多只能输出1024*768分辨率的图像,而显示器是1920*1080的分辨率,显示起来非常不清楚,于是想到用矢量图。可是矢量图到手之后,简直就是噩梦的开始。 首先是windows下用ie打开之后出现乱码,接着用svg插件搞定。然后在虚拟机上在redhat系统下用qt编码,问题出现了,无法显示图片中的文字(包括中文和英文)。当时真是第一次遇到原创 2012-11-07 21:16:57 · 5433 阅读 · 3 评论 -
负数的值
负数的值与其补码对应,与其源码不对应。原创 2014-05-09 15:59:51 · 1057 阅读 · 0 评论 -
Installshield 打包过程中的问题。
最近在用install shield 打包windows程序,过程中遇到了这个错误: error -6267: An error occurred while extracting files from the cab file .....经过谷歌之后,发现installshield 对文件路径长度有限制。据说是256字节。我缩减了路径长度,再次编译通过。原创 2015-02-03 11:23:48 · 1120 阅读 · 0 评论 -
更新$scope 时,ng-repeat 不刷新
前几天用angularjs 遇到一个大坑,就是在使用ng-repeat 时,用jquery的ajax方法获取服务器数据,再传给$scope时,页面不更新。 搜了好几天,国内的贴子里面都没提到过这种动态刷新,都是传一个常量给$scope. 今天终于在stackoverflow上找到原因,就是在angularjs里面,如果你用了jqueryt的方式ajax, angularjs是发现不了的,自然也原创 2016-08-16 11:02:27 · 3788 阅读 · 0 评论 -
Mongoose 查询不到自己写的表
最近在学mongodb,用了mongoose作为数据库接口,我显示在数据库命令行手动创建了一个表,名称为“User”,插入了一些数据, 然后使用以下代码查询这个表,无论如何也查不到结果:var mongoose = require('mongoose');var DBTesturl = 'mongodb://localhost:27017/Test';var dbTest = mongoo原创 2016-08-10 14:19:46 · 1779 阅读 · 2 评论 -
Angular $location 获取 url 参数
今天写了一个demo,想用angular来获取url参数,网址的格式是这样的: "xxxxx.html?aa=112313"结果是search出来的结果是空的。在网上搜了一阵之后,解法是这样的:需要这样组装url: "xxxxx.html#?aa=112313"在问号前面加#.这好像是angular的一个bug。附链接:https://github.com/angu原创 2016-08-23 11:46:28 · 1715 阅读 · 0 评论 -
将 Qt 程序 部署在Windows10 IOT上。
qmake -tp vc yourprojectname.pro 最近项目中用到WindowsIot。 这是个物联网版本的Windows10,阉割了很多东西,但是优势就是能在树莓派这种低成本的硬件上运行。 其实让Qt跑在WindowsIot上的方式很简单,只要你理解,WinRT是什么,就能理解,这为什么简单了。因为微软为所有的移动平台和desktop平台封装了一层WinRT原创 2016-09-29 18:22:12 · 3734 阅读 · 0 评论 -
如何在 Qt中调用 WinRt API
不准备写很多,仅仅简单地说一下。可以在Qt的代码中调用 WinRT的 API 吗?可以。 使用 WRL。 但是WRL 没有任何文档,并且非常复杂,建议使用此开源库:https://moderncpp.com/ 对于异步调用的 APT接口 可以参照 异步编程 页面 :https://moderncpp.com/asynchronous-programming/对于不懂的问题,可以尝原创 2016-10-12 17:33:39 · 2479 阅读 · 3 评论 -
QT 中继承QWidget之后,样式表不起作用 style stylesheet
添加以下代码:void myclass::paintEvent(QPaintEvent *pe){ QStyl原创 2014-08-20 17:29:15 · 4444 阅读 · 2 评论 -
嵌入式linux下使用qt virtualkeyboard
作者使用的是qt5.6版本,一开始以为5.6不支持虚拟键盘,因为在官方网站上下载的源代码编不过,但是后来灵机一动,找到了github上的qt仓库,顺利下载了qt5.6版本的虚拟键盘,一次性编译通过。github地址:https://github.com/qt/qtvirtualkeyboard/tree/5.6编译和部署过程可以参照qt官方文档:http://doc.q原创 2017-03-02 17:43:31 · 16788 阅读 · 19 评论 -
Qt 使用Rcc发布资源文件
QT保护发布软件中图片资源的安全方法QT中有三种使用图片的方法一、直接编译到EXE中,这个方法扩展性不好,我没用!二、通过路径引用图片,比如样式表中这样用 background-image: url(info.png); 这样用很方便,换风格只要更换一下图片就可以了!我原来就是这样用的,但是今天我发现一个很严重的问题,如果我发布的软件被恶意修改了图片,而用户又不懂,这样的后果不转载 2017-02-15 12:40:39 · 3610 阅读 · 0 评论 -
QML中如何添加自定义的componet属性
作者在用qml写复杂程序的时候遇到了一个问题,就是大量的子页面有着重复的内容,比如,背景图片相同,都有返回按钮,页面布局也相同,只是页面内容不同。遇到这样的问题,同学们一定会想到写一个basePage,这个baspage里面就是这些子页面相同的部分,然后对每个子页面都继承这个baspage。确实,这就是解决这类问题的方法,但是我遇到了另一个问题,就是当我的子页面有一些布局,而我希望这些布局里面原创 2017-04-10 13:35:50 · 2060 阅读 · 0 评论 -
提高qml的渲染效率
在qapplication里面加入以下代码 qputenv("QSG_RENDER_LOOP", "basic" );转载 2017-03-15 18:36:57 · 3102 阅读 · 0 评论 -
Build Qt for android 遇到的一些坑
1, 用usb连接我的谷歌平板之后,打开Qtcreator, 点击run, 报错,说 ABI incompatible, devices support ABI:. 这是第一个坑,网上说的办法是设置一个环境变量,我试过之后是不行的,原因其实是因为平板没有授权给这台电脑。所以需要先有一个授权,授权的方式是用adb直接push,这时候平板电脑会弹出一个窗口,问你需不需要授权。但是这里会遇到第二个坑原创 2017-12-19 21:35:11 · 2690 阅读 · 1 评论 -
install MEAN(MongoDB,Expressjs,Angularjs,Nodejs)
First ,install nodejs.address:http://nodejs.org/原创 2014-05-14 19:23:29 · 2042 阅读 · 0 评论 -
QT 中QGroupbox的Title垂直居中
当设置了groupbox的border之后,title会下沉。只要设置一下margin属性,就可以将border原创 2014-05-06 17:36:05 · 8534 阅读 · 4 评论 -
qt下建立两个完全相同的信号槽连接会怎么样?
今天做项目需要根据信号建立信号槽机制,但是有时候会发送两个相同的信号,那么就要建立两次相同的信号槽机制,接着发现出现计划之外的情况。经过测试,猜想如下:qt在建立信号槽机制的时候会另开一个线程工作,两次连接的后果就是qt开了两个线程工作,如果设定了定时器,就会触发两次timeout。会对计划的后果产生意料之外的影响。采取的办法是,每次建立连接之前,先disconnect之前的连接,保持不会原创 2012-11-08 16:08:40 · 1497 阅读 · 0 评论 -
qt中如何向配置表写入中文
如果你的qstring编码为utf8,设定settings.setinicodec("utf8");即可。很简单原创 2012-11-16 19:49:06 · 878 阅读 · 0 评论 -
ubuntu12.4 下交叉编译无法找到arm-linux-gcc命令的解决办法
有可能是权限问题,将root权限切换为普通权限即可原创 2013-01-05 15:10:58 · 726 阅读 · 0 评论 -
Qt paintevent的调用机制
今天写一个程序,用到paintevent来绘图,但是运行之后,发现cpu占用非常高。于是尝试把图片资源删除,cpu恢复正常。于是怀疑是paintevent的原因,于是在paintevent中添加打印信息,运行程序之后,看见打印信息被重复打印了5次,这和我的预期有差异,paintevent不是每次创建窗口时只被调用一次的吗?为什么会有五次呢?原创 2013-03-28 09:32:01 · 8668 阅读 · 0 评论 -
windows下编译opencv库QT
具体的步骤别人已经写的很清楚了,可以行得通。博文地址:http://blog.csdn.net/qiurisuixiang/article/details/8665278有一点需要注意一下,第二次configure的时候,会报错,说QT5CORE_DIR等等找不到,这一条上述教程里面没有说,我搜索了一下之后发现这个方法可以解决这个问题点击Cmake的entry,然后添加原创 2013-08-08 16:57:58 · 1422 阅读 · 0 评论 -
c++编译器查找函数的过程
c++编译器在编译过程中,遇到函数调用,首先会查询当前类似否有该函数名,如果没有则查询直接父类,如果直接父类没有,则继续向上查询,如果都没有,则调用错误。查询到名称之后会检查参数列表,参数列表正确之后函数调用成功,如果是虚函数,则编译器生成动态绑定的代码,如果不是虚函数,则直接生成调用函数的代码。 另外,虚函数的形参列表和返回值必须都相同,参数不相同但名称相同的函数不是同一个虚函数,无法动态原创 2013-08-26 11:08:24 · 1936 阅读 · 0 评论 -
qt中让控件位置岁窗口大小自动调整,并且自身大小不变
qt中可以用layout来布局,这样控件就会随着窗口的大小改变而改变,但是窗口大小改变之后,随之而来的问题是,控件的大小也会发生拉伸或者收缩,非常不美观,解决这个问题的方式就是设置控件的最大和最小值,当最大和最小值相同时,无论窗口如何变化,控件的大小都不会变化了。原创 2013-08-27 13:42:29 · 8244 阅读 · 1 评论 -
javascript和c++的语法不同之处整理
这是我个人学习j'avascript的心得,由于正在学习中,所以会不断更新,算是给自己做一次整理总结。1,javascript中的所有函数都是按值传递的,但是在传递object类型的时候,会感觉起来是按引用传递。书上说这是因为object对象在堆内存中只有一个,而且是全局对象。我觉得全局变量的观点站不住脚,在c++中全局变量按值传递也不会改变原来的值。但是object在堆内存中,在c++中,动原创 2013-08-28 20:05:54 · 1944 阅读 · 0 评论 -
QT在ui文件上建立信号操机制会不会对后期维护产生影响
在qt中建立信号槽机制有两种方式,一种式在代码中用connect函数连接信号和槽,另一种是在ui文件中右击控件,转到槽来连接。前者在维护代码的时候很容易根据ui中的控件名称锁定signal的发送者,然后确定相应调用的函数。很方便。 但是后者建立信号槽连接后,没有connect函数,头文件中也没有signal函数的声明,你无法通过signal把发送信号的控件和slot联系在一起,往往不知道每个原创 2013-09-22 16:08:06 · 1954 阅读 · 0 评论 -
CSS代码中px与pt的区别
pt 是个绝对单位,1 pt =1/72 英寸一个是设备坐标,一个是逻辑坐标,两者是不同的。px是个相对单位,一般像素的参考值为:在一个像素密度是90 pdi的显示器上,正常人从距离显示器28英寸处看一个像素的视角应该不小于0.0227度。1 px定义的在设置为大字体之后不会变;pt定义的会变2 px是相对单位,pt是绝对单位如果大家做网页是为了浏览而不是印转载 2013-11-01 09:38:39 · 1300 阅读 · 0 评论 -
c++的一些学习心得(不断补充中)
class A{...}main(){A a;//第一种初始化A b=a//第二种初始化A b;b=a;}以上两种初始化方式有什么不同呢?经过测试,第一种初始化调用的是类的拷贝构造函数,而第二种初始化调用的是类的赋值函数。原创 2014-03-14 22:00:49 · 697 阅读 · 0 评论 -
Qt 交叉编译的路径设置
在交叉编译Qt源码时,需要设置部署路径。但是部署路径有三个变量,分别是-prefix, -extprefix 和-hostprefix。那这三个变量分别是什么意思呢?-prefix:目标板的引用路径。 这个路径有两个作用,一个是指定目标机的Qt库路径,也就是说,当你把Qt库部署到目标机时,需要把Qt库拷贝到这个路径下,Qt程序就可以自动找到库。第二个是,如果你没有指定extprefix, inst...原创 2018-07-04 16:19:58 · 4359 阅读 · 0 评论