VC++中鼠标拖动实现两对话框之间信息的转移(优化篇)
来源:互联网 发布:dot.js和vue.js 编辑:程序博客网 时间:2024/05/16 18:44
BOOL CDIALOGDlg::PreTranslateMessage(MSG *pMsg)
{
BOOL bFlag=CDialog::PreTranslateMessage(pMsg);
CRect cRectPre,cRectNow,cRectEnd;
CPoint curPoint;
CString strTime;
SYSTEMTIME sysTime;
GetLocalTime(&sysTime);
strTime.Format(" %d-%d-%d-%d-%d-%d ",sysTime.wYear,sysTime.wMonth,sysTime.wDay,sysTime.wHour,sysTime.wMinute,sysTime.wSecond);
//
GetCursorPos(&curPoint); //why begin need to add ::?????????????????
GetDlgItem(IDC_LISTPRE)->GetWindowRect(&cRectPre);
GetDlgItem(IDC_LISTNOW)->GetWindowRect(&cRectNow);
GetDlgItem(IDC_LISTEND)->GetWindowRect(&cRectEnd);
if(curPoint.x >=cRectPre.left && curPoint.x <=cRectPre.right && curPoint.y >=cRectPre.top && curPoint.y <=cRectPre.bottom )
{
if(pMsg->message == WM_LBUTTONDOWN )
{
m_iIndexPre=m_listPre.GetCurSel();//gain position small choosed
if(m_iIndexPre != -1)
{
m_listPre.GetText(m_iIndexPre,m_strTrans);
}
}
else if(pMsg->message == WM_LBUTTONDBLCLK)
{
m_iIndexPre=m_listPre.GetCurSel();//gain position small choosed
if(m_iIndexPre != -1)
{
m_listPre.GetText(m_iIndexPre,m_strChange);
GetDlgItem(IDC_EDIT)->SetWindowText(m_strChange);
m_bFgChg=true;
}
}
}
if(curPoint.x >=cRectNow.left && curPoint.x <=cRectNow.right && curPoint.y >=cRectNow.top && curPoint.y <=cRectNow.bottom )
{
if((pMsg->message == WM_LBUTTONDOWN )&& (pMsg->hwnd == GetDlgItem(IDC_LISTNOW)->m_hWnd))
{
m_iIndexNow=m_listNow.GetCurSel();//gain position small choosed
if(m_iIndexNow != -1)
{
m_listNow.GetText(m_iIndexNow,m_strTrans);
}
}
else if((pMsg->message == WM_LBUTTONUP )&& (pMsg->hwnd == GetDlgItem(IDC_LISTPRE)->m_hWnd))
{
m_strTrans+=strTime;
m_listNow.AddString(m_strTrans);
m_strTrans=_T("");
m_listPre.DeleteString(m_iIndexPre);
}
//else if(pMsg->message == WM_LBUTTONDBLCLK)
//{
// m_iIndexNow=m_listNow.GetCurSel();//gain position small choosed
// if(m_iIndexNow != -1)
// {
// m_listNow.GetText(m_iIndexNow,m_strChange);
// GetDlgItem(IDC_EDIT)->SetWindowText(m_strChange);
// DeleteItem(m_iIndexNow);
// m_bFgChg=true;
// }
//}
}
if(curPoint.x >=cRectEnd.left && curPoint.x <=cRectEnd.right && curPoint.y >=cRectEnd.top && curPoint.y <=cRectEnd.bottom )
{
if((pMsg->message == WM_LBUTTONUP) && (pMsg->hwnd == GetDlgItem(IDC_LISTNOW)->m_hWnd))
{
m_strTrans+=strTime;
m_listEnd.AddString(m_strTrans);
m_strTrans=_T("");
m_listNow.DeleteString(m_iIndexNow);
}
}
return bFlag;
}
- VC++中鼠标拖动实现两对话框之间信息的转移(优化篇)
- VC++中鼠标拖动实现不同CListBox框之间内容的转移
- 在VC++中实现无标题栏对话框的拖动
- 在VC++中实现无标题栏对话框的拖动(转帖)
- 在VC++中实现无标题栏对话框的拖动
- 在VC++中实现无标题栏对话框的拖动
- 在VC++中实现无标题栏对话框的拖动
- 在VC++中实现无标题栏对话框的拖动
- vc中实现无标题栏对话框的拖动
- VC 对话框 怎么实现 鼠标拖动 变大 变小
- VC实现无标题栏对话框的拖动
- VC MFC 对话框,如何实现鼠标拖动显示一个框,松开鼠标框就消失
- VC实现对话框上信息的显示
- vc++ mfc中拖动效果的实现
- vc++ mfc中拖动效果的实现
- 鼠标拖动无标题栏的对话框
- VC中控件或者对话框的鼠标离开消息
- VC实现鼠标移动对话框窗口
- [转]TCP慢启动
- 进程内多线程同步CRITICAL_SECTION
- VC中BSTR、Char和CString类型的转换
- 关闭Android开机锁屏
- 【hibernate】映射集合属性list
- VC++中鼠标拖动实现两对话框之间信息的转移(优化篇)
- 【jdbc】java连接mySQL数据库 初步
- 比较实用的手风琴菜单及导航菜单
- 使用 Eclipse 和 Java SE 6 创建独立 Web Services 应用程序,第 1 部分: Web Services 服务端应用程序
- 一个简单聊天室实例
- 滚动视图
- 二叉树遍历递归和非递归算法总结
- XCode的一些调试技巧 控制台
- tomcat,weblogic,jboss区别