zhwl-1212的个人主页

http://www.qtcn.org/bbs/u/92003  [收藏] [复制]

zhwl-1212

  • 16

    关注

  • 27

    粉丝

  • 17

    访客

  • 等级:新手上路
  • 总积分:6
  • 保密,2010-02-04

最后登录:2019-09-17

更多资料

日志

2019-05-24 10:25

使用Qt5.6+VS2013在原来的工程中新增一个项目,编译的时候总是报如下问题:
There's no Qt version assigned to this project for platform Win32. Please user the 'change Qt version' feature and choose a valid Qt version for this platform.如下图


解决办法:
1.选中项目右键,Qt Project Settings

2.选择要编译成的x64还是Win32

阅读全文»分类:默认分类|回复:0|浏览:683
2019-05-19 22:03

解决在模板函数中处理不同的数据类型有一些方法,在编译期间可以利用模板特化实现,运行期间可以利用多态、函数绑定等来实现。
方法一:利用模板特化来处理模板函数中的不同数据类型,而且类型中的属性也可以不同。
struct A
{
int m_a = 1;
};
struct B
{
QString m_b;
};
template <typename T>
inline QString convert(T &data){}
template <>
inline QString convert<A>(A &a)
{
a.m_a++;
return QString::number(a.m_a);
}
template<>
inline QString convert<B>(B &b)
{
b.m_b = &q ..

阅读全文»分类:C++|回复:0|浏览:590
2019-05-13 18:46

使用Qt自带例子+QSortFilterProxyModel来实现搜索。


官方介绍:For hierarchical models, the filter is applied recursively to all children. If a parent item doesn't match the filter, none of its children will be
shown.
默认情况下QSortFilterProxyModel的Filtering功能,如果父节点不匹配的话,子节点也不会被搜索,这种情况下对绝大多数树的搜索不适用。

不过可以通过重载filterAcceptsRow() 和filterAcceptsColumn()函数来实现,父节点不匹配的话,也会搜索子节点。

阅读全文»分类:默认分类|回复:0|浏览:546
2018-11-21 21:57

QT使用windeployqt部署发布及其精简

https://blog.csdn.net/itas109/article/details/80497065#1%E5%89%8D%E8%A8%80

使用windepoyqt配合qt.conf可以使发布的应用程序更简洁
例如:
1.在Qt5.10.1版本下,使用qtcreator4.7创建一个quick2工程test,并编译成release版本
2.配置qt.conf如下

Prefix=quick
前缀quick为加载插件plugins和qml库的目录前缀
3.使用windeployqt.exe工具导入qt的依赖库,第三方依赖的库需要自己手动导入。批处理设置如下:

@echo off
echo 发布test应用程序
set QTDIR=C:\Qt\Qt5.10.1\5.10.1\msvc2015
set APPDI ..

阅读全文»分类:Qt|回复:0|浏览:751
2018-11-02 21:43

qt.conf的使用

阅读全文»分类:Qt|回复:0|浏览:655
2018-09-09 22:11

Qt5下使用QFile去读编码格式为utf-8的文件,然后修改文件内容,再保存文件。
如果文件中有中文,再次打开保存后的文件会出现中文乱码。
解决办法

QFile file(filePathName);
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
//文件的内容一般都比较小,直接读取全部
QString readData(file.readAll());
file.close();

if(!readData.contains(oldName))
return;

readData.replace(oldName, newName);
if(!file.open(QIODevice::WriteOnly | QIODevice::Text))
return;
QTextStream out(&file);
out ..

阅读全文»分类:Qt|回复:0|浏览:1111
2018-09-07 22:33

方案一:首先做出来界面,然后在不同的分辨率下调整一套qml文件并用文件夹管理,最后根据不同的分辨率来加载不同文件夹中的文件。这种方法类似于android下自适应屏幕分辨率的实现方法。

方案二:qml界面上全部都使用布局管理器Layout,在Layout中不能设置x,y,width,height等否在容易造成循环绑定。
设置一个最小分辨率,调整qml文件适应该分辨率;
设置一个最大分辨率,调整qml文件使用该分辨率;
如果屏幕分辨率小于设置的最小的分辨率,就出现滚动条;
如果屏幕分辨率大于设置的最大分辨率,就只拉伸背景窗体。

方案三:在 ..

阅读全文»分类:Qt|回复:2|浏览:1547
2018-07-16 12:26

FileDialog {
id: fileDialog
title: "Please choose a file"
folder: "file:///" + "E:/Qml/"; //设置默认打开文件夹路径,前面需要加上"file:///"
onAccepted: {
console.log("You chose: " + fileDialog.fileUrls)
Qt.quit()
}
onRejected: {
console.log("Canceled")
Qt.quit()
}
Component.onCompleted: visible = true
}

阅读全文»分类:默认分类|回复:0|浏览:1133
2017-10-26 07:58

1.QtCreator 编译的时候报错
LINK123:转换到COFF期间失败,文件无效或损坏
解决方案:
查找是否有两个cvtres.exe。一个是C:\Program Files(x86)\Microsoft Visual Studio 10.0\vc\bin\cvtres.exe, 另一个是C:\Windows\Microsoft.NET\Framework\v
4.0.30319\cvtres.exe。右键属性|详细信息 查看两者版本号,删除/重命名较旧的版本,或者重新设置Path变量。
意外的是,治本的办法是第三步,删除旧版本的cvtres.exe后,就不需要每次都设置配置了。

2.安装了用vs2015-64位编译出来的Qt5.10.1版本, 在win10下运行qml文件,程序起来就挂 ..

阅读全文»分类:Qt|回复:0|浏览:795
2017-09-17 20:53

思路:
1.使用windows的相关函数,根据进程快照查找到进程,遍历进程的窗口。
2.设置进程窗口的style
3.因为Qml的根和QWidget的根都是基于QWindow的,设置QWidget的窗口的parent为Qml的window
4.调用windows的SetParent()函数,把进程窗口的父窗口设置为QWidget的窗口

阅读全文»分类:默认分类|回复:0|浏览:507

Powered by phpwind v8.7 Certificate Copyright Time now is:12-08 23:54
©2005-2016 QTCN开发网 版权所有 Gzip disabled