Qt学习总结(C鱼)之路径参数引用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt学习总结(C鱼)之路径参数引用相关的知识,希望对你有一定的参考价值。

1.引用相对路径:

例如: QCursor cursor(QPixmap("1.png"));

问题:会发现引用失败,这是因为相对路径都是从当前工作目录开始找起文件的。可以通过以下函数获取当前工作目录:

bool QDir::setCurrent ( const QString & path ) [static]

然后会发现当前工作目录是C:\Users\Administrator,与之不符。所以可以考虑将当前工作目录重新设置,而另一个问题,因为Qt是将工程目录和程序目录放在两个地方,例如:

程序目录: C:\Users\Administrator\Desktop\QT\build-Qt-Project-05-unknown-Debug
工程目录: C:\Users\Administrator\Desktop\QT\Qt-Project-05

至于程序目录,其实可以通过调用以下函数来获取:

QString QCoreApplication::applicationDirPath () [static]

好了,现在得到了程序目录,我们就可以将当前工作目录设置为程序目录,例如:

QDir::setCurrent(QCoreApplication::applicationDirPath());

2.引用绝对路径:

例如:
QCursor cursor(QPixmap("C://Users//Administrator//Desktop//QT//build-Qt-Project-05-unknown-Debug//debug//1.png"));

经过测试,‘//’和‘\’,都有效。

3.引用资源文件:

当添加了资源文件后,并且前缀设置为‘/’。那么就可以直接引用了,例如:

QCursor cursor(QPixmap(":/resource/1.png"));

注意前面要添加‘:’字符

以上是关于Qt学习总结(C鱼)之路径参数引用的主要内容,如果未能解决你的问题,请参考以下文章

Qt学习总结(C鱼)之QList和QMap容器类

QT学习小结之信号与槽

Qt信号和槽对值传递参数和引用传递参数的总结

摸鱼周报年终总结

机器学习 之 线性回归 选择题总结

ES6学习总结之 解构赋值