用DLL中的函数在主对话框的控件上绘图,如按钮或Static

本文介绍了一种通过加载动态链接库(DLL)实现绘图功能的方法。具体展示了如何使用DLL中的函数在MFC对话框中绘制线条,并提供了具体的C++代码实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


用DLL中的函数在主对话框的控件上绘图,如按钮或Static - 加菲 - 视频会议软件开发 - 加菲
 
对话框按钮响应:

void CTest2Dlg::OnButton4() 
{
typedef void(*pDrawLinePP)(CDC *pDC,CWnd *pWnd,CPoint pt1,CPoint pt2); 
HINSTANCE hDLL; 
pDrawLinePP DrawLine1;

hDLL=LoadLibrary("WBDLL.dll");//加载动态链接库MyDll.dll文件; 

DrawLine1 = (pDrawLinePP)GetProcAddress(hDLL,"DrawLinePP"); 

CDC *pDC;
pDC = GetDlgItem(IDC_BUTTON4)->GetDC();
CPoint pt1,pt2,pt3;

pt1.x = 20;
pt1.y = 0;
pt2.x = 20;
pt2.y = 50;
pt3.x = 60;
pt3.y = 50;

DrawLine1(pDC,this,pt1,pt2);
DrawLine1(pDC,this,pt1,pt3);

pDC = GetDlgItem(IDC_STATIC_FRAME)->GetDC();
DrawLine1(pDC,GetDlgItem(IDC_STATIC_FRAME),pt1,pt2);
DrawLine1(pDC,GetDlgItem(IDC_STATIC_FRAME),pt1,pt3);

FreeLibrary(hDLL);//卸载MyDll.dll文件;
}

用DLL中的函数在主对话框的控件上绘图,如按钮或Static - 加菲 - 视频会议软件开发 - 加菲
 
DLL

extern "C" __declspec(dllexport) int TextFun1(int a, int b);
extern "C" __declspec(dllexport) void FunStr(CString str1,CString str2,char * chr);
extern "C" __declspec(dllexport) void DrawLine(CDC *pDC,CDialog *pDlg);
extern "C" __declspec(dllexport) void DrawLinePointToPoint(CDC *pDC,CDialog *pDlg,CPoint pt1,CPoint pt2);
extern "C" __declspec(dllexport) void DrawLinePP(CDC *pDC,CWnd *pWnd,CPoint pt1,CPoint pt2);



void DrawLinePointToPoint(CDC *pDC,CDialog *pDlg,CPoint pt1,CPoint pt2)
{
pDC->MoveTo(pt1);
pDC->LineTo(pt2);
}
//在CWnd对象上绘图
void DrawLinePP(CDC *pDC,CWnd *pWnd,CPoint pt1,CPoint pt2)
{
pDC->MoveTo(pt1);
pDC->LineTo(pt2);
}





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值