通过类态誉向导给编辑框添加控件变察闭亏量 CEdit1 m
或者说败神直接在dlg类头文件声明CEdit m
然后用m.SubClasswindow(编辑框的id
)也就是子类化的方式
我个人喜欢第一种,看你的理解能力了
控件添加了一般都要关联到一个类,而且都是使用ClassWizard来自动添加控件的接口文件,添加控件改辩对应的变量就可以了。有了这个接口文件和变量,就可以 *** 作这个控件了。你想添加拖放功能也很简单,比如你的控件对应的变量的类为:CWMPPlayer4
则在这个类的头文件中:
protected:
virtual void PreSubclassWindow()
// Generated message map functions
protected:
//{{AFX_MSG(CWMP)
afx_msg void OnDropFiles(HDROP hDropInfo)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
因为这个类是从CWnd继承下来的,所以我们可以重写虚函数和处理Windows消息。薯拦
在这个类的实核手缺现文件中:
BEGIN_MESSAGE_MAP(CWMPPlayer4, CWnd)
//{{AFX_MSG_MAP(CWMP)
ON_WM_DROPFILES()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
void CWMPPlayer4::PreSubclassWindow()
{
// TODO: Add your specialized code here and/or call the base class
DragAcceptFiles( TRUE )
CWnd::PreSubclassWindow()
}
void CWMPPlayer4::OnDropFiles(HDROP hDropInfo)
{
// TODO: Add your message handler code here and/or call default
char szFilePath[MAX_PATH]
::DragQueryFile( hDropInfo, 0, szFilePath, MAX_PATH )
// 调用控件的接口播放拖进的文件
SetUrl( szFilePath )
CWnd::OnDropFiles(hDropInfo)
}
这个很可能是源代码作者改御皮自己扩展的一个类,VC中本身没有这个类这个类的主要作用是让拆迅一个静态核差文本控件显示的文字变成一个超链接
就像很多软件上看到的一样
这个功能看着简单,实现起来还是有点复杂的
好好看看他的cpp文件吧:HyperLink.cpp
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)