Qt Gui使用(三)

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、相对路径、绝对路径获取方式:
    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);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值