想在CLISTBOX中实现鼠标拖动某项? 就是在鼠标左键选中某项然后鼠标左键不放,将某项拖动到指定位置呢?
想在CLISTBOX中实现鼠标拖动多项项? 就是在鼠标左键选中某些项然后鼠标左键不放,将某项拖动到指定位置呢?现在已经可以是EXTENDED了 可以选择多项 就是不知道如何实现拖动?
望各位朋友指教
我这里有支持单项拖动的代码 但是就是不能支持多项拖动?
先附上:
#pragma once
// CDragAndDropListBox
class CDragAndDropListBox : public CListBox
{
DECLARE_DYNAMIC(CDragAndDropListBox)
public:
CDragAndDropListBox();
virtual ~CDragAndDropListBox();
int m_Oldposition;
int m_ifmove;
protected:
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnTimer(UINT nIDEvent);
DECLARE_MESSAGE_MAP()
private:
int m_MovingIndex;
int m_MoveToIndex;
BOOL m_Captured;
DWORD m_Interval; //scroll speed when an item is dragged above or below the window
void InsertDraggedItem();
void DoTheScrolling(CPoint Point,CRect ClientRect);
void DrawTheLines(int Index);
};