这个工程是单文档多视
某个视用来画图
1。要往这个视上画一些icon,这些icon画上去之后可以用鼠标抓取或者拖放,还可以在它们之间连线
2。把ctreectrl中节点的icon拖放到这个视里头来给点思路,最好是例子,在线等待!!!

解决方案 »

  1.   

    http://www.vckbase.com/code/listcode.asp?mclsid=7&sclsid=701&page=3
      

  2.   

    我往视里头画勒icon
    这样画的
    void CMyView::OnDraw(CDC* pDC) 
    {

    HICON hIcon1=AfxGetApp()->LoadIcon(IDI_ICON10); 
    pDC->DrawIcon(0,0,hIcon2); 
    DestroyIcon(hIcon1); 

    }
    1。
    我点下鼠标左键的时候,怎么判断是否点到这个图标的区域内?
    是否需要保存这个图标的rect,然后用PtInRect()判断?2。
    另外,画图标用DrawIcon跟用bitmap画有区别么?
    如果要用bitmap画该怎么画,有api把icon转换成bitmap么?3。是否可以左键点下SetCapture,左键抬起时ReleaseCapture,在OnMouseMove里实现拖动图标的过程,也就是不停的擦除上一个位置的图标,并在新位置画图标,是这样实现的么?
      

  3.   

    当你拖放是,你是怎么在OnMouseMove实现图标的的不断绘画?
      

  4.   

    这是我的设想啊,还没去试,就是把锚点设为左键点下去的那个点,设个变量previouspoint,初始化为锚点,当mouse开始移动的时候,在onmousemove里面先取得当前点位置赋给currentpoint,然后删除previouspoint的图标,在currentpoint画新图标,末了再把previouspoint赋值为currentpoint我想鼠标移动的过程就是不断调用onmousemove,不知道这样行不行
      

  5.   

    see DrawCli Sample in MSDN
      

  6.   

    先告诉我简单的先把,怎么把icon文件读到一个bitmap里头?
      

  7.   

    视图里面画的图标
    我怎么判断是否鼠标点在它上面
    非要把所有图标的rect保存么?
    不会把