我建立了一个绘画直线类,其中有一个实现绘画的成员函数display()。类如下:
class Line:public Shape//绘制直线类
{
public:
..........
Line(void)
{};
~Line()
{};
void display(POINT S,POINT E,int style,int width,COLORREF color)
{
CWnd* pWnd;
//HWND hwnd;
CDC *dc = pWnd->GetDC();
CPen hPen(style,width,color);
CPen *hOldPen;
hOldPen = dc->SelectObject(&hPen);
dc->MoveTo(S);
dc->LineTo(E);
}};
然后在CXXXView类中调用,但是运行时出现错误Unhandled exception in xxx.exe(MFC42D.DLL):0XC0000005:Access Violation。我想错误是和获取窗口的句柄有关。不知道对不对,对如何修改也不是很清楚。希望各位指点。
class Line:public Shape//绘制直线类
{
public:
..........
Line(void)
{};
~Line()
{};
void display(POINT S,POINT E,int style,int width,COLORREF color)
{
CWnd* pWnd;
//HWND hwnd;
CDC *dc = pWnd->GetDC();
CPen hPen(style,width,color);
CPen *hOldPen;
hOldPen = dc->SelectObject(&hPen);
dc->MoveTo(S);
dc->LineTo(E);
}};
然后在CXXXView类中调用,但是运行时出现错误Unhandled exception in xxx.exe(MFC42D.DLL):0XC0000005:Access Violation。我想错误是和获取窗口的句柄有关。不知道对不对,对如何修改也不是很清楚。希望各位指点。
解决方案 »
- CTreeCtrl双击结点弹出对话框,对话框被双击事件抢掉焦点的问题
- WORD库与EXCEL库冲突的问题,高手请进。
- ListCtrl表头响应函数问题
- 大家看看调试的时候出现这样的警告,是怎么回事了
- 关于串口的问题(MSComm 控件,VC)
- 关于vc对话框程序?
- MFC向导生成的程序中的 Recent File 菜单的代码是在哪实现的
- 那种对给定IP段进行共享资源扫描的软件是怎么实现的?
- +++++++SOCKET 问题++++++++
- 想知道CSDN里面关于驱动开发是在哪个版块?
- 有关gina的两个问题
- 请问用向导生成一个mdi的基于htmlview类的浏览器用里面的打开命令打开一个网页文件的时候为什么不能正确显示?
void display(CDC* pDC, POINT S,POINT E,int style,int width,COLORREF color)
{ CPen hPen(style,width,color);
CPen *hOldPen;
hOldPen = pDC->SelectObject(&hPen);
pDC->MoveTo(S);
pDC->LineTo(E);
}使用:
void myCWnd::OnPaint()
{
CPaintDC dc(this);
myLine.Display(&dc, ……);//绘制你的直线对象
}