- [wukong] 这是钱林松老师的课件摘录的,讲的比这还详细 03/07 19:40
- [wukong] 只是方便用户,对象可以向基本类型那样,进行+-等运算。 03/07 19:38
- [chinatree] 不懂,什么书讲这么详细? 03/07 11:20
- [chinatree] 重载不是相同函数只是参数不同吗?运算符怎么重载?作用是什么? 03/07 11:13
- [tomato] c++的基本思想和java基本差不多,只是有一些细节的差别。 03/05 20:33
- [tomato] 我不是什么老师,只是一个搞技术的程序员。 03/05 20:32
- [tomato] 支持你! 03/04 23:07
- [wukong] 是的,一定努力,多动手,谢谢!!! 03/04 22:52
- [tomato] 明白了C++中的构造函数和析构函数,谢谢博主的这篇博文。嘿嘿。 03/04 22:30
- [tomato] 开始学习C++了?不仅要学习知识还要实验才行。 03/04 22:26
[2013-12-21 21:49] 获得对话框子窗口的信息(一)
1 通过GetDlgItem(ID)获得控件
CString strA,strB,strSum;
GetDlgItem(EDT_A)->GetWindowText(strA);
GetDlgItem(EDT_B)->GetWindowText(strB);
strSum.Format("%d",atoi(strA)+atoi(strB));
GetDlgItem(EDT_SUM)->SetWindowText(strSum);
2.通过GetDlgItemInt获得数据
UINT GetDlgItemInt( int nID, BOOL* lpTrans = NUL...
CString strA,strB,strSum;
GetDlgItem(EDT_A)->GetWindowText(strA);
GetDlgItem(EDT_B)->GetWindowText(strB);
strSum.Format("%d",atoi(strA)+atoi(strB));
GetDlgItem(EDT_SUM)->SetWindowText(strSum);
2.通过GetDlgItemInt获得数据
UINT GetDlgItemInt( int nID, BOOL* lpTrans = NUL...
阅读全文 |
评论次数(0) |
浏览次数(691) |
所属类型(Win32)
[2013-12-19 20:35] 创建多个按钮响应同一个函数
创建多个按钮响应同一个函数
添加
BEGIN_MESSAGE_MAP(CDialogDlg, CDialog)
//{{AFX_MSG_MAP(CDialogDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_WM_CLOSE()
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
{ WM_COMMAND, BN_CLICKED, (WORD)100, (WORD)200, AfxSig_vv,(AFX_PMSG)&OnButton2 },
//}}AFX_M...
添加
BEGIN_MESSAGE_MAP(CDialogDlg, CDialog)
//{{AFX_MSG_MAP(CDialogDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_WM_CLOSE()
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
{ WM_COMMAND, BN_CLICKED, (WORD)100, (WORD)200, AfxSig_vv,(AFX_PMSG)&OnButton2 },
//}}AFX_M...
阅读全文 |
评论次数(0) |
浏览次数(617) |
所属类型(Win32)
[2013-12-19 18:49] OnOK and OnCancel
MFC默认建立的Dialog按Esc响应OnCancel,回车响应OnOK,都会关闭对话框,只要重载OnOk和OnCancel函数即可,但此时点击关闭按钮无法关闭窗口,原因是它调用OnCancel,还需要再重载OnClose函数。
总结OnOK()、OnCancel()、OnClose()、OnDestroy()之间的区别
第一,OnOK()和OnCancel()是CDialog基类的成员函数,而OnClose()和OnDestroy()是CWnd基类的成员函数,即WM消息响应函数。从应用程序结构的角度,拿对话框来说,红色的X对应的是CWnd,而处于对话框中的“确定”、“取消”按钮...
总结OnOK()、OnCancel()、OnClose()、OnDestroy()之间的区别
第一,OnOK()和OnCancel()是CDialog基类的成员函数,而OnClose()和OnDestroy()是CWnd基类的成员函数,即WM消息响应函数。从应用程序结构的角度,拿对话框来说,红色的X对应的是CWnd,而处于对话框中的“确定”、“取消”按钮...
阅读全文 |
评论次数(0) |
浏览次数(735) |
所属类型(Win32)
[2013-12-16 20:23] accelerator
1.如果是MFC程序,并且是文档/视结构,只有默认ID为IDR_MAINFRAME的加速键表被加入。如果要装入另外ID的加速键表,要在CYourApp::InitInstance()中这样写
m_pMainWnd->LoadAccelTable(MAKEINTRESOURCE(ID_YOUR_ACCELERATOR));
2.如果是基于Dialog的MFC程序,这样写:
class CYourApp : public CWinApp
{
...
HACCEL hAccel;
}
CYourApp::InitInstance()
{
...
hAcc...
m_pMainWnd->LoadAccelTable(MAKEINTRESOURCE(ID_YOUR_ACCELERATOR));
2.如果是基于Dialog的MFC程序,这样写:
class CYourApp : public CWinApp
{
...
HACCEL hAccel;
}
CYourApp::InitInstance()
{
...
hAcc...
阅读全文 |
评论次数(0) |
浏览次数(677) |
所属类型(Win32)
[2013-12-16 20:20] 重绘菜单
重绘菜单
1.添加ON_WM_MEASUREITEM()消息
void CMainFrame::OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct)
主要负责菜单的高度和宽度
typedef struct tagMEASUREITEMSTRUCT { // mis
UINT CtlType; // type of control
UINT CtlID; // combo box, list box, or button identifier
...
1.添加ON_WM_MEASUREITEM()消息
void CMainFrame::OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct)
主要负责菜单的高度和宽度
typedef struct tagMEASUREITEMSTRUCT { // mis
UINT CtlType; // type of control
UINT CtlID; // combo box, list box, or button identifier
...
阅读全文 |
评论次数(0) |
浏览次数(981) |
所属类型(Win32)
[2013-12-15 19:57] 上下文菜单
WM_CONTEXTMENU消息 用来响应鼠标右键消息, 它响应的不是鼠标右键按下消息,也不是鼠标右键弹起消息
而是鼠标右键 依次按下弹起后触发的消息。
因此,若程序还响应了鼠标右键按下的消息OnRButtonDown,且在此响应函数中有模特对话框出现的话,则不会响应WM_CONTEXTMENU消息。
比如,有AfxMessageBox(L"Right Down"); 模特对话框出现在右键按下响应函数中, 则关闭此模特对话框后,不在响应右键菜单消息。
原因在于:
右键菜单 ...
而是鼠标右键 依次按下弹起后触发的消息。
因此,若程序还响应了鼠标右键按下的消息OnRButtonDown,且在此响应函数中有模特对话框出现的话,则不会响应WM_CONTEXTMENU消息。
比如,有AfxMessageBox(L"Right Down"); 模特对话框出现在右键按下响应函数中, 则关闭此模特对话框后,不在响应右键菜单消息。
原因在于:
右键菜单 ...
阅读全文 |
评论次数(0) |
浏览次数(637) |
所属类型(Win32)
[2013-12-14 19:40] 菜单编程(三):系统菜单
函数功能:该函数允许应用程序为复制或修改而访问窗口菜单(系统菜单或控制菜单)。
函数原型:HMENU GetSystemMenu(HWND hWnd,BOOL bRevert);
参数:
hWnd:拥有窗口菜单拷贝的窗口的句柄。
bRevert:指定将执行的操作。如果此参数为FALSE,GetSystemMenu返回当前使用窗口菜单的拷贝的句柄。该拷贝初始时与窗口菜单相同,但可以被修改。
如果此参数为TRUE,GetSystemMenu重置窗口菜单到缺省状态。如果存在先前的窗口菜单,将被销毁。
返回值:如果参数bRevert为FALSE,返回值是窗口菜单的拷...
函数原型:HMENU GetSystemMenu(HWND hWnd,BOOL bRevert);
参数:
hWnd:拥有窗口菜单拷贝的窗口的句柄。
bRevert:指定将执行的操作。如果此参数为FALSE,GetSystemMenu返回当前使用窗口菜单的拷贝的句柄。该拷贝初始时与窗口菜单相同,但可以被修改。
如果此参数为TRUE,GetSystemMenu重置窗口菜单到缺省状态。如果存在先前的窗口菜单,将被销毁。
返回值:如果参数bRevert为FALSE,返回值是窗口菜单的拷...
阅读全文 |
评论次数(0) |
浏览次数(671) |
所属类型(Win32)
[2013-12-14 19:29] 菜单编程(二)
手动添加菜单
createMenu创建顶层菜单
createpopmenu创建子菜单
appendmenu把子菜单挂接到顶层菜单(按次序挂接,insertmenu可以指定位置挂接,这是区别)
或者添加菜单项
detch是把对象和句柄分离,在局部变量时,可以保存资源不被销除
AppendMenu( UINT nFlags, UINT nIDNewItem = 0, LPCTSTR lpszNewItem = NULL );
该函数在指定的菜单条、下拉式菜单、子菜单或快捷菜单的末尾追加一个新菜单项。
//动态添加菜单
CMenu menu;
menu.Create...
createMenu创建顶层菜单
createpopmenu创建子菜单
appendmenu把子菜单挂接到顶层菜单(按次序挂接,insertmenu可以指定位置挂接,这是区别)
或者添加菜单项
detch是把对象和句柄分离,在局部变量时,可以保存资源不被销除
AppendMenu( UINT nFlags, UINT nIDNewItem = 0, LPCTSTR lpszNewItem = NULL );
该函数在指定的菜单条、下拉式菜单、子菜单或快捷菜单的末尾追加一个新菜单项。
//动态添加菜单
CMenu menu;
menu.Create...
阅读全文 |
评论次数(0) |
浏览次数(661) |
所属类型(Win32)
[2013-12-12 19:42] MFC 菜单编程(一)
1.出现在窗口顶层的菜单栏叫顶层菜单,其中的命令叫顶层菜单项,下拉菜单,上下文菜单,系统菜单。
2.创建菜单:添加一个菜单模板;(资源文件)然后为每一个菜单项添加消息函数。命令消息
ON_COMMAND(IDM_PHONE1, OnPhone1) ,菜单和工具栏的消息。
3. 当对某菜单添加消息响应函数时, 4 个类的消息响应优先次序分别是: a
.View;b.CDOC;c.CMainFrame.d.CWinAPP .
4.GetSystemMetrics(SM_CXMENUCHECK),
GetSystemMetrics(SM_CYMENUCHECK)// 获得...
2.创建菜单:添加一个菜单模板;(资源文件)然后为每一个菜单项添加消息函数。命令消息
ON_COMMAND(IDM_PHONE1, OnPhone1) ,菜单和工具栏的消息。
3. 当对某菜单添加消息响应函数时, 4 个类的消息响应优先次序分别是: a
.View;b.CDOC;c.CMainFrame.d.CWinAPP .
4.GetSystemMetrics(SM_CXMENUCHECK),
GetSystemMetrics(SM_CYMENUCHECK)// 获得...
阅读全文 |
评论次数(0) |
浏览次数(646) |
所属类型(Win32)
[2013-12-07 21:13] VC中的路径及裁减区
在VC画图中路径层,相当于定义一个区域,在这个区域内进行绘图并不影响该区域内原有图像,即在定义的路径区域内进行的绘图操作是无效的(BeginPath和EndPath之间),它只是确定路径的区域,在这之后调用CDC的路径操作函数才有效,而且所有的绘图操作都可确定路径,如TextOut,MoveTo,LineTo都可以.
由于BeginPath和EndPath之间我们的绘图操作无效,那么路径层它的作用是什么呢,实际上它的作用主要是和裁剪区域进行的合作工作,如果有用PS的人应该知道蒙板,路径层的作用就相当于蒙板的作用,起着对路径区域的保护,当它和裁剪区域配合时,则可以决定裁剪区域的真正...
由于BeginPath和EndPath之间我们的绘图操作无效,那么路径层它的作用是什么呢,实际上它的作用主要是和裁剪区域进行的合作工作,如果有用PS的人应该知道蒙板,路径层的作用就相当于蒙板的作用,起着对路径区域的保护,当它和裁剪区域配合时,则可以决定裁剪区域的真正...
阅读全文 |
评论次数(0) |
浏览次数(612) |
所属类型(Win32)
『 查看更多文章 』