在MFC ClassWizard中,picture控件响应的事件只有BN_CLICKED,
怎么让picture控件能响应鼠标按下和弹起的LBUTTONDOWN和LBUTTONUP事件呢?
试过新建一个类继承自CStatic,类名为CNewStatic,然后picture控件的变量
设置为CNewStatic的对象,但这个picture的鼠标按下和弹起事件就要
到CNewStatic类去处理了,而通常这两个事件发生时要进行的动作是要对
picture控件所属对话框的其他成员进行处理,(例如鼠标在picture按下时让
对话框的EDIT控件显示"down",弹起时显示"up"),难道还要把对话框的指针传入CNewStatic中吗?有没有直接在对话框类中响应picture的鼠标按下和弹起(就如BN_CLICKED那样的)的方法?
怎么让picture控件能响应鼠标按下和弹起的LBUTTONDOWN和LBUTTONUP事件呢?
试过新建一个类继承自CStatic,类名为CNewStatic,然后picture控件的变量
设置为CNewStatic的对象,但这个picture的鼠标按下和弹起事件就要
到CNewStatic类去处理了,而通常这两个事件发生时要进行的动作是要对
picture控件所属对话框的其他成员进行处理,(例如鼠标在picture按下时让
对话框的EDIT控件显示"down",弹起时显示"up"),难道还要把对话框的指针传入CNewStatic中吗?有没有直接在对话框类中响应picture的鼠标按下和弹起(就如BN_CLICKED那样的)的方法?
解决方案 »
- windows在一个进程用了很多内存的时候,会自动减小它的工作集么?
- typedef int (WINAPI *PFNSETHOOK)(BOOL, DWORD, HWND);有没有语法错误!!!!!
- 连接数据库???
- I_like_cpp是那个垃圾.为了提高自己BLOG的访问,居然在自己的BLOG放木马.
- 怎么为DIALOGBAR里面的控件添加变量 ?????
- vc 下如何编译和编辑*.cc的文件,象*.cpp一样?
- 急~~~~~~各位大虾!帮我一个忙啊!!在线等!!!!
- 我的Dll为什么不能跟踪?急,今天结贴!
- 谁能回答我的问题呢?谢谢!在线等待!!
- 谁能告诉我CInternetSession构造函数的第5个参数怎么使用?
- 全局函数中#include"xxx.h"写在哪里啊?
- 400分求代理服务器源码及相关资料
如果在的话你就可以自己设置一个处理函数来处理。
就如你说的问题:
在鼠标按下时在edit控件中显示"down",弹起时显示"up"。
GetWindowRect(GetDlgItem(IDC_PICTURE),&rect);
GetCursorPos(&point);
bJudge=PtInRect(point,rect);//这个可能是错误的。就是看point在不在rect中。呵呵。
if(bJudge)
{
GetDlgItem(IDC_EDIT)->SetWindowText("Down");
}
picStatic.SubclassDlgItem(IDC_PICTURE,this);
void CYourDlg::OnLButtonDown(UINT nFlags, CPoint point)
{
CWnd* pW =this->ChildWindowFromPoint(point);
switch(::GetDlgCtrlID(pW->m_hWnd))
{
case IDC_PICTURE:
//add your code here
}
}
别忘了去掉picture的Notify