重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
例如: QCursor cursor(QPixmap("1.png"));
成都创新互联公司长期为超过千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为上思企业提供专业的成都做网站、网站建设,上思网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。
问题:会发现引用失败,这是因为相对路径都是从当前工作目录开始找起文件的。可以通过以下函数获取当前工作目录:
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());
例如:
QCursor cursor(QPixmap("C://Users//Administrator//Desktop//QT//build-Qt-Project-05-unknown-Debug//debug//1.png"));
经过测试,‘//’和‘\’,都有效。
当添加了资源文件后,并且前缀设置为‘/’。那么就可以直接引用了,例如:
QCursor cursor(QPixmap(":/resource/1.png"));
注意前面要添加‘:’字符