当前位置: 首页 > news >正文

天津品牌网站建设麦肯锡咨询公司

天津品牌网站建设,麦肯锡咨询公司,网页设计个人网站,建立企业网站步骤常见的两种类和类之间相互调用的方法。 16.1 用户权限信息在不同对话框之间共享 ①在CWokerApp类中定义变量#xff1a; class CWorkerApp : public CWinApp { public:CWorkerApp();SAdmin m_admin;//登录信息 // 重写 public:virtual BOOL InitInstance(); // 实现DECLARE…常见的两种类和类之间相互调用的方法。 16.1 用户权限信息在不同对话框之间共享 ①在CWokerApp类中定义变量 class CWorkerApp : public CWinApp { public:CWorkerApp();SAdmin m_admin;//登录信息 // 重写 public:virtual BOOL InitInstance(); // 实现DECLARE_MESSAGE_MAP() };②在CLoginDlg类中进行赋值 BOOL CLoginDlg::CheckPass(CString szName, CString szPass) {//TRUE代表登录成功CFile file;if (!file.Open(_T(admin.dat), CFile::modeRead)){CreateUser();if (!file.Open(_T(admin.dat), CFile::modeRead))return FALSE;}SAdmin a;while (file.Read(a, sizeof(a)) sizeof(a)){if (!szName.CompareNoCase(a.sName)){if (szPass a.sPass){theApp.m_admin a;return TRUE;}}}return FALSE; }③在CMainDlg类中进行访问应用采用引用型变量 BOOL CMainDlg::OnInitDialog() {CDialogEx::OnInitDialog();CString str _T(控制面板 - );SAdmin a theApp.m_admin;str a.sName;str _T(();str a.nPrior ? _T(普通) : _T(高级);str _T());SetWindowText(str);if (a.nPrior)GetDlgItem(IDC_PRIOR) -EnableWindow(FALSE);//GetDlgItem(IDC_PRIOR)-ShowWindow(SW_HIDE);//ShowWindow EnableWindowreturn TRUE; }16.2 其他对话框访问主对话框AfxGetMainWnd ①在CWorkerApp类中指定主对话框 BOOL CWorkerApp::InitInstance() {CLoginDlg dlg;if (IDCANCEL dlg.DoModal())return FALSE;while (true){…case IDC_INFO:{CWorkerDlg dlg;m_pMainWnd dlg;dlg.DoModal();break;}…}}return FALSE; }②在其他对话框中使用全局函数AfxGetMainWnd获取主对话框指针并访问 void CInputDlg::AddToList() { if (AfxMessageBox(_T(“是否添加?”), MB_YESNO) IDNO) return; CString str; GetDlgItemText(IDC_NUMB, str); CWorkerDlg* pDlg (CWorkerDlg*)AfxGetMainWnd(); if (pDlg -CheckNumber(str))return; int i pDlg-m_list.GetItemCount(); pDlg-m_list.InsertItem(i, str); GetDlgItemText(IDC_NAME, str);} 16.3 其他对话框访问主对话框m_pDlg 思想直接定义指针变量指向要访问的对话框这种方法其实没有主对话框 ①在CInputDlg类中定义CWorkerDlg类型的指针变量用来指向CWorkerDlg对话框需要CInputDlg类中包含CWorkerDlg的头文件或进行声明然而在头文件中进行包含容易造成类与类之间相互包含的混乱错误因此可以进行声明这种声明其实是假声明只适用于指针类型不适用于对象。 这种声明可以防止类与类在头文件中相互包含、重复包含而引起的错误。 //#include WorkerDlg.h class CWorkerDlg; class CInputDlg : public CDialogEx {DECLARE_DYNAMIC(CInputDlg) public:CWorkerDlg *m_pDlg; //定义CWorkerDlg对象指针CInputDlg(CWnd* pParent NULL); // 标准构造函数virtual ~CInputDlg(); … };在stdafx.h中可禁用warning #pragma warning(disable:4005)②在CInputDlg窗口弹出之前将CWorkerDlg对象指针this指针赋值给①中定义的m_pDlg变量 void CWorkerDlg::OnBnClickedAdd() {//排除重复工号的功能当重复的工号禁止插入已存在CInputDlg dlg;dlg.m_pDlg this;dlg.DoModal(); }16.4 消息反射控件内的消息映射到父窗口类 a)所有子控件的内部消息都是通过WM_NOTIFY这个消息反射给父窗口 b)不同的控件类型对应有不同的反射消息种类; 例如BN_CLICK代表Button Notify Click按钮点击消息 LVN_ITEMCHANGED代表List View Notify Item Changed选中项变化了 16.5 在CWnd类中常见的等价关系 a)判断父子关系 BOOL IsChild( const CWnd* pWnd ) const; 判断窗口是否是一个子窗口 CWnd* GetParent(); 获取父窗口对象指针 m_list.GetParent() pWnd 等价于pWnd -IsChild(m_list);b)判断是否是最大化pWnd -GetStyle() WS_MAXIMIZE BOOL IsIconic( ) const; 判断窗口是否是最小化的状态 BOOL IsZoomed( ) const; 判断窗口是否是最大化的状态 c)判断是否可见GetStyle() WS_VISIBLE BOOL IsWindowVisible( ) const; 判断窗口是否是可见的 void CTestdDlg::OnBnClickedIsVisible() {CWnd *pOK GetDlgItem(IDOK);//if ()//pOK -IsWindowVisible// ;//else// pOK-ShowWindow(SW_SHOW);pOK-ShowWindow(pOK-GetStyle()WS_VISIBLE ? SW_HIDE : SW_SHOW); }d)判断是否可用GetStyle() WS_DISABLED BOOL IsWindowEnabled( ) const; 判断窗口是激活的还是禁用的 void CTestdDlg::OnBnClickedDisabled() {CWnd *pWnd GetDlgItem(IDCANCEL);//pWnd-EnableWindow(!pWnd-IsWindowEnabled());pWnd-EnableWindow(pWnd-GetStyle() WS_DISABLED); }16.6 CWnd类中常见的静态成员函数 static CWnd* PASCAL FindWindow( LPCTSTR lpszClassName, LPCTSTR lpszWindowName); 根据窗口类型名或窗口标题名查找窗口static CWnd* PASCAL GetFocus( ); 获取焦点所在的窗口 CWnd* SetFocus( ); 将一个窗口设置为焦点窗口 static CWnd* PASCAL GetActiveWindow( ); 进程内的获取活动窗口 CWnd* SetActiveWindow( ); 进程内的将一个窗口设置为活动窗口 static CWnd* PASCAL GetForegroundWindow( ); 获取所有任务栏主窗口中最前端的窗口 BOOL SetForegroundWindow( ); 将主窗口推到任务栏中所有窗口的最前端CWnd* GetTopWindow( ) const; 获取所有重叠窗口中最前端的窗口 void BringWindowToTop( ); 将主窗口推到重叠窗口的最前端 BOOL FlashWindow( BOOL bInvert ); 让窗口在任务栏中闪烁以下 void CTestdDlg::OnBnClickedGetForeGround() {CWnd* p CWnd::FindWindow(_T(NotePad), NULL);if(p){p-SetForegroundWindow();p-FlashWindow(TRUE);} }HICON GetIcon( BOOL bBigIcon ) const; 获取窗口图标 HICON SetIcon( HICON hIcon, BOOL bBigIcon ); 设置窗口图标 static CWnd* PASCAL GetDesktopWindow( ); 获取Windows桌面窗口 static CWnd* PASCAL GetCapture( ); 获取捕捉鼠标活动的窗口 CWnd* SetCapture( ); 将窗口设置为捕捉鼠标活动的窗口 int GetWindowRgn( HRGN hRgn )const; 获取不规则窗口的区域 int SetWindowRgn( HRGN hRgn, BOOL bRedraw ); 按照指定的区域将窗口设置为不规则形状 void MoveWindow( int x, int y, int nWidth, int nHeight, BOOL bRepaintTRUE ); 根据指定的位置移动窗口 void MoveWindow(LPCRECT pRect, BOOL bRepaint TRUE ); 根据指定的矩形区域移动窗口 BOOL SetWindowPos(const CWnd* pWndAfter, int x, int y, int cx, int cy, UINT nFlags ); 不但移动窗口的x,y坐标位置而且还改变窗口的Z轴次序 void CenterWindow( CWnd* pOwner NULL ); 将窗口居中对应父窗口或者屏幕的中央 void GetWindowRect( LPRECT lpRect ) const; 获取窗口在屏幕坐标中的矩形区域 void GetClientRect( LPRECT lpRect ) const; 获取窗口的客户区的矩形区域 static CWnd* WindowFromPoint( POINT point ); 获取屏幕中某个坐标点上的窗口 CWnd* ChildWindowFromPoint( POINT point ) const; 获取客户区内某个坐标点上的子窗口 static CWnd* FindWindow(LPCTSTR szClassName, LPCTSTR lpszWindowName ); 根据类名或者标题名查找一个主窗口 CWnd* GetOwner( ) const; 获取拥有者窗口 void SetOwner( CWnd* pOwnerWnd ); 将窗口设置为被另一个窗口拥有 CWnd* GetParent( ) const; 获取父窗口 CWnd* SetParent( CWnd* pWndNewParent ); 为窗口设置一个新的父窗口 CWnd*GetNextWindow(UINTnFlag GW_HWNDNEXT ) const; 获取z序中的前一个或后一个窗口可以联合GetTopWindow对同等级窗口遍历 CWnd* GetWindow( UINT nCmd ) const; 全面获取窗口包括父子窗口前后窗口等 int GetDlgCtrlID( ) const; 获取一个窗口的ID int SetDlgCtrlID( int nID ); 给窗口设置一个新的ID
http://wiki.neutronadmin.com/news/11762/

相关文章:

  • 绛帐做网站html5网页设计论文
  • 邢台地区网站建设口碑好青海中小企业网站建设
  • 快速搭建网站前端插件西安网站建设雄账号
  • 全网模板建站系统qq是由哪家公司开发的
  • 做网站原型的简单工具dede可以做购物网站吗
  • 怎样搭建一个网站php 网站开发案例教程
  • 做婚庆网站有哪些网站开发哪些
  • 广州建网站哪儿济南兴田德润简介网站建设留言板的实现
  • 做公司网站需要什么手续京粉购物网站怎么做
  • 设计网站技术北京网站建设降龙
  • 做ppt图片用的网站有哪些问题网站建设的技术团队
  • 网站云优化网上下载的文件打开是乱码怎么办
  • 大庆油田app下载安装南昌网站排名优化报价
  • 网站的可行性分析怎么写手机电商平台怎么做的
  • 威海网站建设威海wordpress 博客摘要
  • 自己做网站怎么挣钱快手短链接生成
  • 做微信商城设计网站无锡信息网招聘
  • 彩票网站开发app动易网站建设工作室
  • 做电影网站教程如何申请免费的网站空间
  • 机关网站建设工程总结品牌推广怎么做
  • 免费做网站推广的软件4k视频素材网站
  • 网站建设 办公系统常州网架公司
  • dream8网站建设及设计临沂 网站优化
  • 天水市建设局网站成都哪里做网站备案
  • 建立官网需要多少钱seo资源网站排名
  • 集团网站源码wordpress添加分享按钮
  • 中企网站案例如何通过域名访问网站
  • 商业网站建设教程建设企业资质双网是哪两个网站
  • 网站经营常州做网站的企业
  • 镇江市机关效能与作风建设网站seo网站论文