Qt Gui使用(三)
2016-05-04 17:10
417 查看
1、dll加载使用:
typedef void* (*TInitObjectLayer)();
typedef void (*TUnInitObjectLayer)();
typedef void* (*TGetObjectLayerProjectObject)();
//定义对象组态dll插件中的函数变量
TInitObjectLayer
m_fObjInit;
//对象dll初始化函数指针
TUnInitObjectLayer
m_fObjUninit;
//对象dll释放函数指针
TGetObjectLayerProjectObject
m_fObjGetProObj; //对象dll获取工程对象指针
QString sObjDllName = QCoreApplication::applicationDirPath() + "/ObjectLayer";
QLibrary lib(sObjDllName);
if(!lib.load()) return;
m_fObjInit = (TInitObjectLayer)lib.resolve("InitObjectLayer");
m_fObjUninit = (TUnInitObjectLayer)lib.resolve("UnInitObjectLayer");
m_fObjGetProObj = (TGetObjectLayerProjectObject)lib.resolve("GetObjectLayerProjectObject");
if(NULL == m_fObjInit)
{
qDebug("Error:Load ObjectLayer Failed!");
return;
}
gpProObj = (TDMSObject*)m_fObjInit();
2、相对路径、绝对路径获取方式:
QDir dir(QApplication::applicationDirPath());
QString sAbsRunImg = dir.absoluteFilePath(sRunImgPath);
typedef void* (*TInitObjectLayer)();
typedef void (*TUnInitObjectLayer)();
typedef void* (*TGetObjectLayerProjectObject)();
//定义对象组态dll插件中的函数变量
TInitObjectLayer
m_fObjInit;
//对象dll初始化函数指针
TUnInitObjectLayer
m_fObjUninit;
//对象dll释放函数指针
TGetObjectLayerProjectObject
m_fObjGetProObj; //对象dll获取工程对象指针
QString sObjDllName = QCoreApplication::applicationDirPath() + "/ObjectLayer";
QLibrary lib(sObjDllName);
if(!lib.load()) return;
m_fObjInit = (TInitObjectLayer)lib.resolve("InitObjectLayer");
m_fObjUninit = (TUnInitObjectLayer)lib.resolve("UnInitObjectLayer");
m_fObjGetProObj = (TGetObjectLayerProjectObject)lib.resolve("GetObjectLayerProjectObject");
if(NULL == m_fObjInit)
{
qDebug("Error:Load ObjectLayer Failed!");
return;
}
gpProObj = (TDMSObject*)m_fObjInit();
2、相对路径、绝对路径获取方式:
QString sFileTmp = QFileDialog::getOpenFileName(pParent, sCaption, sFileName, sFilter);
if("" == sFileTmp)
{
return false;
}
QDir dir(QApplication::applicationDirPath());
sFileName = dir.relativeFilePath(sFileTmp);
QDir dir(QApplication::applicationDirPath());
QString sAbsRunImg = dir.absoluteFilePath(sRunImgPath);
相关文章推荐
- 个人能力怎么看?四个方面帮你量化UE&UI的绩效标准
- Qt Gui使用(二)
- 纯代码实现自定义UITableView的cell
- 在android studio中添加.jar文件后,rebuild不报错,执行报错的解决
- Qt Gui使用(一)
- java基础学习总结——GUI编程(二)
- jJMeter UDP Request:不等待服务器响应
- java基础学习总结——GUI编程(一)
- 生成器模式 (Builder)
- STL学习笔记— —特殊容器queue
- Java队列Queue、双端队列Deque
- keras中models的Squential类的源码简介
- iOS--Quartz2D使用(自定义UIImageView控件、绘制基本图形)
- UiViewController 里frame和bounds取值有误
- UESTC 491 Tricks in Bits
- UESTC 491 Tricks in Bits
- UESTC 485 Game(康托,BFS)
- UESTC 485 Game(康托,BFS)
- Unreal Engine 4 —— 冷却UI的制作
- Unreal Engine 4 —— 冷却UI的制作