对话框最大化和打开文件
来源:互联网 发布:淘宝千里眼好用吗 编辑:程序博客网 时间:2024/04/30 00:10
对话框最大化时,使控件大小也随对话框窗口变化
给对话框添加WM_SIZE消息,生成函数中添加:
void CDataShowDlg::OnSize(UINT nType, int cx, int cy){CDialogEx::OnSize(nType, cx, cy);// TODO: 在此处添加消息处理程序代码CWnd *pWnd;pWnd = GetDlgItem(IDC_STATIC_VIEWSHOW); //获取控件句柄if(pWnd)//判断是否为空,因为对话框创建时会调用此函数,而当时控件还未创建{ CRect rect; //获取控件变化前大小 pWnd->GetWindowRect(&rect); ScreenToClient(&rect);//将控件大小转换为在对话框中的区域坐标 // cx/m_rect.Width()为对话框在横向的变化比例 //rect.left=rect.left*cx/m_rect.Width();//调整控件大小 rect.right=rect.right*cx/m_rect.Width(); //rect.top=rect.top*cy/m_rect.Height(); rect.bottom=rect.bottom*cy/m_rect.Height(); pWnd->MoveWindow(rect);//设置控件大小m_pShowView->MoveWindow(rect);//设置视图大小} GetClientRect(&m_rect);//将变化后的对话框大小设为旧大小Invalidate();}m_pShowView是对话框中插入的视图通过IDC_STATIC_VIEWSHOW控件显示
打开文件
void CDataShowDlg::OnFileOpen(){// TODO: 在此添加命令处理程序代码CString strPathName = _T("");CString strFilter = _T("bin(*.*)|*.*||");CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, strFilter); dlg.m_ofn.lpstrTitle = _T("浏览文件");if(dlg.DoModal() == IDOK){strPathName = dlg.GetPathName();}m_pShowDoc->OnOpenDocument(strPathName);}这样打开的文件数据就可以通过m_pShowDoc访问
BOOL CDataShowDoc::OnOpenDocument(LPCTSTR lpszPathName){if (!CDocument::OnOpenDocument(lpszPathName))return FALSE;// TODO: 在此添加您专用的创建代码ifstream ifs(lpszPathName, ios::binary);//二进制形式读文件<span style="white-space:pre"></span>//........添加读文件语句...........return TRUE;}
0 0
- 对话框最大化和打开文件
- |打开对话框最大化显示|
- 打开文件对话框和保存文件对话框
- 打开和保存文件对话框
- 文件打开和保存对话框
- 打开文件对话框和打开文件夹对话框代码
- MFC中打开文件对话框和打开文件夹对对话框
- C++学习之:打开文件对话框和打开文件夹对话框
- 使用文件对话框打开和保存文件
- <MFC>打开文件和保存文件对话框
- 简约的MFC打开文件对话框和保存文件对话框
- VC++中打开文件对话框和保存文件对话框
- 【框架-wxwidget】wxWidget打开文件对话框和保存文件对话框
- WPF打开文件对话框和保存文件对话框
- MFC 打开文件对话框和保存文件对话框
- Qt中打开文件对话框和保存文件对话框
- JS打开文件和文件夹对话框
- 打开和保存文件的对话框
- 初识软件架构之(一)三层架构宏观认识
- jdk与jre的区别
- 对每一行输入加上行号后重新输出
- Problem F: Fibonacci Again
- JAVA对象容器
- 对话框最大化和打开文件
- ABAP基础-abap数据类型的解析整理
- 开学了
- 《平凡人的平凡生活》之过渡篇
- Ubuntu 12.04之找不到Qemu命令
- 漫谈ANN(2):BP神经网络
- solr5.0高亮配置
- jquery easyui 入门环境搭建
- zoj 3816(dfs)