编一个SDI程序,利用鼠标画一条直线,按住鼠标左键并拖拽,先画出随鼠标移动的直线,当释放左键后才画出一条真正的直线,像画图中的直线功能一样
最好附加窗口重绘能力
解决方案 »
- ADO插入数据问题
- 字符串压缩
- 如何使用CWinThread的m_pThreadParams给线程传递结构类型的参数
- MediaPlayer控件问题?
- 为什么在CSocket类的OnAccept()函数中,使用Accept()函数,得到的对方的IP地址是204.204.204.204?
- 请问有什么好办法能随时检测到用户打开了安装程序(不管什么安装程序)?
- 对话框程序,有一个数据需要打印,可怎么样实现打印预览呢?
- 我怎么才能在按钮上竖着写它的Caption?
- NetMeeting
- 请教电脑高手!!!万分感谢(WINNT、1024*768、无法启动、VGA MODE)
- CMFCPropertyGridCtrl在对话框中为什么不显示?
- 列表视控件
至于绘制 MoveTo,LineTo.....
CPoint m_ptOrigin;
bool m_bDragging;
HCURSOR m_hCross;
在视图类的构造函数里写
m_bDragging=false;
m_hCross=AfxGetApp()->LoadStandardCursor(IDC_CROSS);
在OnLButtonDown函数里写
SetCapture();
::SetCursor(m_hCross);
m_ptOrigin//起点坐标//=point;
m_bDragging=TRUE;在OnMouseMove函数里写
if(m_bDragging)
{
CClientDC dc(this);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
m_ptOrigin=point;
}
在OnLButtonUp中写
if(m_bDragging)
{
m_bDragging=false;
ReleaseCapture;
}你可以参考。