登录
首页 » VC++源码 » VC++基本鼠标操作——判断鼠标消息

VC++基本鼠标操作——判断鼠标消息

于 2022-03-19 发布 文件大小:19.76 kB
0 89
下载积分: 2 下载次数: 1

代码说明:

VC++基本鼠标操作——判断鼠标消息,操作方法:按下鼠标左键,移动鼠标即可绘制椭圆,直至释放左键!   void CBaseMouseDemoView::OnMouseMove(UINT nFlags, CPoint point)   {    if(bDrag)    {    ptUp=point;//记录鼠标的当前位置    DrawCircle();//画新圆    }    CView::OnMouseMove(nFlags, point);   }   void CBaseMouseDemoView::DrawCircle()   {    Invalidate(false);    CClientDC dc(this);//获取DC    CRect rect;    GetClientRect(rect); //获取客户窗口区域    CBrush brush(RGB(255,255,255));    dc.FillRect(rect,&brush);//填充背景色为白色    dc.Ellipse(ptDown.x,ptDown.y,ptUp.x,ptUp.y);//绘制矩形   }

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • VC6.0 使用信号量Semaphore实现线程的同步
    VC6.0 使用信号量Semaphore实现线程的同步,使用信号量实现线程同步,设置访问保护对象的最多线程数为2,确定当前已经启动运行的线程数目,可以创建线程。   CWinThread* pThread=AfxBeginThread(ThreadProc,&m_Edit);//开辟一个工作线程,   int thread=0;//全局变量记录当前运行线程的数目   CSemaphore mySemaphore(2,2);//创建CSemaphore类对象   UINT ThreadProc(LPVOID pParam)//工作线程入口函数   {    CEdit *pedit=(CEdit*)pParam;    CString str;    thread++;//线程数目加1    str.Format("%d",thread);    pedit->SetWindowText(str);//编辑框显示    CSingleLock singlelock(&mySemaphore);//创建CSingleLock类对象    singlelock.Lock();//计数器初始值减1    MessageBox(NULL,"信号量控制访问资源线程数","提示",MB_ICONWARNING);//弹出对话框    thread--;//线程数目减1    str.Format("%d",thread);    pedit->SetWindowText(str);//编辑框显示    return 0;   }
    2022-02-20 19:37:49下载
    积分:1
  • VC++ 物资进出货库存管理系统
    VC++ 物资管理系统,类似进销存的系统,带有入出库管理,主要功能有物资信息查询、库存盘点、往来单位信息管理、进货管理、商品信息管理、操作员管理、员工信息管理、数据恢复、数据备份、数据库设置模块、系统设置、查询条件检索窗口,仓库信息管理、销售统计排行 、库存查询等模块。本系统在编写时使用了三方控件:RxDll.dll。   用户名:mr 默认密码:mingrisoft   数据库在根目录,两个文件:wzglxt_Data.MDF和wzglxt_Log.LDF
    2022-04-18 10:15:36下载
    积分:1
  • vc 串口接收和发送数据的例子 Cs结构
    这是一个CS结构(包括了服务端和客户端)的串口调试程序,测试时,两者都要运行,本程序可让你熟悉串口的相关操作,在客户端和服务端,您都要定义以下几个参数:   m_Comm.SetCommPort(1); //设置串口   m_Comm.SetRThreshold(1); //设置收到多少个字符后触发OnComm事件   m_Comm.SetPortOpen(TRUE); //打开串口   源码中包括了两部分的代码,请下载后编译对应目录中的源码,先运行客户端。
    2022-02-06 06:48:34下载
    积分:1
  • VC++ 自定义每个Tab内的Dlg效果
    VC++ 创建窗体的Tab,为每一个TAB页创建不同的Dlg,如图所示,每一个TAB内有可能是一张图片,也有可能是一个登录界面或一个Combobox,或者是一个树形菜单,总之,每个TAB除了隔离显示内容外,还自定义了多种形式的数据,增加了TAB窗口的实用性,最终运行效果请参见截图所示。
    2022-08-21 06:29:38下载
    积分:1
  • VC6.0模拟实现模态对话框
    VC++6.0模拟实现模态对话框,一般情况下的窗口都是基于此方式 ,当然也有非模态对话框,本款模态对话框,实现要点如下:   void MyDialog::OnButton1() //确定按钮   {    CDialog::OnOK();//调用OnOK()函数退出对话框      }   void MyDialog::OnButton2() //取消按钮   {    CDialog::OnCancel();//调用OnCancel()函数退出对话框   }   void MyDialog::OnButton3() //关闭按钮   {    int nRet = 5; // 自定义返回值    CDialog::EndDialog(nRet); // 调用EndDialog退出对话框   }
    2022-05-27 01:17:22下载
    积分:1
  • VC++ 6.0“通讯簿”程序示例
    VC++ 6.0仿Windows“通讯簿”程序示例,其实是个挺不错的程序,不管是功能或是界面,都做的不错。可对通讯录中的人进行分类管理,每个记录在通讯录中的联系人,都包括了详细信息,比如城市、传真、移动电话、家庭电话、邮编、省/自治区、街道地址、国家等信息,业务中的联系人则与普通联系人的信息不一样,比如显示、城市、部门、职务、传真、业务名、办公室、邮编、街道地址等,有兴趣可下载源码二次开发。
    2022-05-20 01:58:32下载
    积分:1
  • VC++ 生成Brush笔刷程序
    VC++ 生成Brush笔刷程序,使用了三种方法创建笔刷,第一种和第二种使用构造函数,第三种 创建CBrush类的一个对象myBrush3,调用CreateBrushIndirect()函数。创建了纯色、斜纹、网状方格三种形式的笔刷。   void CCreateBrushView::OnDraw(CDC* pDC)   {    CCreateBrushDoc* pDoc = GetDocument();    ASSERT_VALID(pDoc);    // TODO: add draw code for native data here    // 第一种方法创建画刷    // 定义时调用构造函数    CBrush myBrush1(RGB(0,0,255));    CBrush* pOldBrush1 = pDC->SelectObject(&myBrush1);    pDC->Rectangle(100,150,250,400);    // 恢复画刷对象    pDC->SelectObject(pOldBrush1);    // 第二种方法创建画刷    // 定义时调用构造函数    CBrush myBrush2(HS_BDIAGONAL,RGB(255,0,0));    CBrush* pOldBrush2 = pDC->SelectObject(&myBrush2);    pDC->Rectangle(300,100,450,360);    // 恢复画刷对象    pDC->SelectObject(pOldBrush2);    // 第三种方法创建画刷    // 创建CBrush类的一个对象myBrush3    CBrush myBrush3;    // 设置LOGBRUSH结构;    LOGBRUSH lb;    lb.lbStyle = BS_HATCHED;    lb.lbColor = RGB(0,255,0);    lb.lbHatch = HS_CROSS;    // 调用CreateBrushIndirect()函数    myBrush3.CreateBrushIndirect(&lb);    CBrush* pOldBrush3 = pDC->SelectObject(&myBrush
    2022-01-30 23:25:40下载
    积分:1
  • VC++ 显式链接:关闭计算机
    VC++ 显式链接:关闭计算机,制作一个竖长形的窗口,功能包括了关机、重启、注销、锁机等功能。
    2023-05-28 20:55:03下载
    积分:1
  • VC++ 6.0制作的弹出式菜单
    VC++ 6.0制作的弹出式菜单,代码作者:一剑,这里主要是定义了CMainFrame::OnContextMenu函数来实现弹出式菜单,请参见以下核心代码:   void CMainFrame::OnContextMenu(CWnd* pWnd, CPoint point)   {    CMenu menu;    CMenu *popup;    //IDR_POP_MENU是菜单资源的ID号,是刚添加的菜单    menu.LoadMenu(IDR_POP_MENU);    ASSERT(menu);    //此函数用于得到子菜单的指针。    //由于需要的是“可弹出项”的第一层子菜单,因此用GetSubMenu(0)来得到。    popup=menu.GetSubMenu(0);    popup->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x, point.y,this);      }   然后需要定义几个菜单命令响应函数,请参见源代码文件。
    2022-03-30 01:28:38下载
    积分:1
  • VC++ 小实验报告:Sin正弦波曲线绘制
    VC++ 小实验报告:Sin正弦波曲线绘制,包括了坐标方面的技巧和波形绘制方面的知识,都可以从本示例中学习到,源代码简单,运行效果请看截图所示。
    2023-08-02 06:25:02下载
    积分:1
  • 696518资源总数
  • 104292会员总数
  • 28今日下载