MFC学习笔记5 VC多对话框管理
来源:互联网 发布:怎么申请淘宝中国质造 编辑:程序博客网 时间:2024/06/05 07:20
本系列学习笔记来源于《VC++就业培训宝典之MFC视频教程》,记录自己系统化学习VC++ MFC过程
多对话框管理
新建两个对话框
- 设置焦点顺序,使用ctrl+d,然后点选顺序。
- IDOK是个特殊的ID,回车键会默认点击它。
- ESC默认是IDCANCEL
- strcmp是C语言的字符串比较函数。
代码:
// test3.cpp : Defines the entry point for the application.//#include "stdafx.h"#include "resource.h"#include "stdio.h"BOOL CALLBACK MainProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam){ char s[256]; sprintf(s,"uMsg=0x%x,wParam=%d,lParam=%d \n", uMsg,wParam,lParam); OutputDebugString(s); switch(uMsg){ case WM_COMMAND: { switch (LOWORD(wParam)){ case IDCANCEL: EndDialog(hwndDlg,IDCANCEL); return FALSE; case IDOK: EndDialog(hwndDlg,IDCANCEL); return FALSE; } return FALSE; } } return FALSE;}BOOL CALLBACK LoginProc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam){ switch(uMsg){ case WM_COMMAND: { switch (LOWORD(wParam)){ case IDCANCEL: EndDialog(hwndDlg,IDCANCEL); return FALSE; case IDOK: { char sName[20]; char sPass[20]; GetDlgItemText(hwndDlg,IDC_NAME,sName,sizeof(sName)); GetDlgItemText(hwndDlg,IDC_PASS,sPass,sizeof(sPass)); if(0==strcmp("admin",sName) && 0==strcmp("pass",sPass)){ EndDialog(hwndDlg,IDOK); } else MessageBox(hwndDlg,"pass error","prompt",MB_OK); return FALSE; } } return FALSE; } } return FALSE;}int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow){ int nRet = DialogBox(hInstance,(LPCSTR)IDD_DIALOG_LOGIN,NULL,LoginProc); if(nRet==IDCANCEL) return -1; DialogBox(hInstance,(LPCSTR)IDD_DIALOG_MAIN, NULL,MainProc); return 0;}
运行效果:
输入 admin password,回车进入主界面。
添加删除item的实现代码:
void CTest4Dlg::OnAdd() { CString str; GetDlgItemText(IDC_NUMB,str); CListCtrl* pList = (CListCtrl*)GetDlgItem(IDC_LIST); int nCount = pList->GetItemCount(); pList->InsertItem(nCount,str); GetDlgItemText(IDC_NAME,str); pList->SetItemText(nCount,1,str); GetDlgItemText(IDC_SALARY,str); pList->SetItemText(nCount,2,str);}void CTest4Dlg::OnDel() { CListCtrl* pList = (CListCtrl*)GetDlgItem(IDC_LIST); int nSel = pList->GetSelectionMark(); if(nSel<0){ AfxMessageBox("please select one row."); } pList->DeleteItem(nSel);}
阅读全文
0 0
- MFC学习笔记5 VC多对话框管理
- VC++学习笔记2--------------如何给MFC对话框添加背景图片
- VC++学习笔记2--如何给MFC对话框添加背景图片
- MFC对话框学习笔记
- VC/MFC学习笔记
- VC|MFC学习笔记
- MFC笔记1:对话框学习
- Mfc 对话框学习笔记(1)
- MFC学习笔记之-对话框
- MFC学习笔记之对话框
- 孙鑫VC学习笔记:第十五讲 编写一个基于MFC对话框的聊天程序
- 孙鑫VC学习笔记:第十五讲 (四) 编写一个基于MFC对话框的聊天程序
- 孙鑫VC学习笔记:第十五讲 编写一个基于MFC对话框的聊天程序
- VC++/MFC学习笔记(一)
- VC++/MFC学习笔记(二)
- VC++/MFC学习笔记(三)
- VC++/MFC学习笔记(四)
- VC++/MFC学习笔记(五)
- GitHub之创建共享版本库
- Android第三方库介绍
- Android事件总线EventBus3.0用法全解析
- [转]【OpenCV入门教程之五】 分离颜色通道&多通道图像混合
- 转载-css动画优化黑科技
- MFC学习笔记5 VC多对话框管理
- recycleview的多条目展示
- MFC学习笔记6 新建MFC项目、MFC类层次结构
- myeclipse要默认配置utf-8的地方
- ubuntu16.04 vim安装和退出编辑
- 休闲零食新零售,满足更多消费者需求
- 物流链云平台企运达-WMS仓库条码管理系统帮助仓库智能化
- 归并排序递归与非递归实现
- Hibernate与 MyBatis的比较