1、防止资源文件过大,编译失败,在pro文件中添加
CONFIG+= resources_big
2、QT-VS2013 项目由一台电脑迁移到另一台电脑中,编译报错,资源不显示等
需要在vs2013中把原有文件先从文件过滤器中移除,然后再重新添加即可
本质原因,没有触发QT,moc编译(将指定qt特定代码转换为标准c++代码)
3、QLabel设置图像,动态调整widget大小时,QLabel不能缩小问题
QLabel->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
4、自定义Widget中,使用vBoxLayout,手动添加子控件后,多个子控件会重叠问题
由于在Designer中为该自定义Widget的UI文件,设置了垂直布局,导致,所以在Designer中打破布局,完全使用代码方式即可。
5、QT图形视图框架,QGraphicsView无法响应dropEvent事件,触发不了
因为QGraphicsView默认的dragMoveEvent中ignore了拖拽事件,导致信号传递终止。解决方案也很简单,重写dragMoveEvent(QDragMoveEvent *event){event->accept();}
6、QT图形视图框架,事件传递顺序
事件传递的顺序是视图-->场景-->图元。需要注意的是调用父类的事件处理接口不能省略,否则事件到此就停止传递了。如删掉MyView事件处理函数中的QGraphicsView::mousePressEvent(event)场景和图元都不会接收到鼠标按下的事件。
7、QT QGraphicsItem 消除重影 移动重影
开启: View 的 FullViewportUpdate模式
默认是: MinimalViewportUpdate
m_pView->setViewportUpdateMode(QGraphicsView::FullViewportUpdate);
8.QT 图像视图框架,group添加成员时注意:
group->addToGroup(pText);
pText->setPlainText(itMeasureValue->strText.c_str());
这两行的顺序不能调整,不然鼠标hoverEnterEvent事件的范围会异常