QT常用代码之加载动态库和弹出对话框
加载动态库的代码:
- typedef void (*Execute)(); // 定义导出函数类型
- QString strConfigPath ="D:\\Debug\\test.dll";
- QLibrary hdll( strConfigPath ); //加载dll,当前目录
- if(hdll.load())
- {
- Execute fun1 = (Execute)hdll.resolve("execute"); //用resolve来解析execute函数
- if ( fun1 ) //解析成功则调用函数
- {
- fun1();
- }
- }
注意在Windows环境下QT不能加载使用了MFC的dll,因为加载后会崩溃,只能加载使用Win API的dll和qt编写的dll。
弹出模态对话框:
- MyDlg *pDlg = new MyDlg();
- pDlg->exec();
- delete pDlg;
弹出非模态对话框:
- MyDlg* pDlg = new MyDlg();
- pDlg->setModal(false);
- pDlg->show();
注意弹出对话框一般通过new一个对象出来,如果使用临时变量的话,出现作用域的话就会对话框会自动销毁。