Windows资源管理器Web视图界面

2016-01-29 11:54 95 1 收藏

Windows资源管理器Web视图界面,Windows资源管理器Web视图界面

【 tulaoshi.com - C语言心得技巧 】

Windows资源管理器Web视图界面



作者/祝晓斌

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)


下载源代码

   
当我们使用Windows资源管理器(Exporlor)时,看到左边的视图能够显示所选目标的相关信息,比较好用。
本例是一个简单的Web视图界面示例,不过左边不是一个Web视图,而是一个FormView。界面如下图所示:


图一 程序运行画面

本例是最简单的SDI工程,在View中创建了两个View:

int CXindowView::OnCreate(LPCREATESTRUCT lpCreateStruct) {    if (CView::OnCreate(lpCreateStruct) == -1)        return -1;    /* 创建左右两个视图 */    m_pForm = (CXindowForm *) okCreateView(RUNTIME_CLASS(CXindowForm), 1001);    m_pList = (CXindowList *) okCreateView(RUNTIME_CLASS(CXindowList), 1002);     m_pForm-m_pParent = this;    return 0;}     
当窗口宽度<400时,会隐藏左边的CXindowForm视图:
void CXindowView::OnSize(UINT nType, int cx, int cy) {    CView::OnSize(nType, cx, cy);    int nFormWidth = 200;    /* 如果窗口宽度<400, 就隐藏左视图 */    if(cx400)    {        if(m_pForm-GetSafeHwnd())  m_pForm-ShowWindow(SW_SHOW);        if(m_pForm-GetSafeHwnd())  m_pForm-MoveWindow(0,0,nFormWidth,cy);        if(m_pList-GetSafeHwnd())  m_pList-ShowWindow(SW_SHOW);        if(m_pList-GetSafeHwnd())  m_pList-MoveWindow(nFormWidth,0,cx-nFormWidth,cy);    }    else    {        if(m_pForm-GetSafeHwnd())  m_pForm-ShowWindow(SW_HIDE);        if(m_pList-GetSafeHwnd())  m_pList-ShowWindow(SW_SHOW);        if(m_pList-GetSafeHwnd())  m_pList-MoveWindow(0,0,cx,cy);    }}
其中左边的的CXindowForm视图中有个CXLabel控件“增加”,点击会产生WM_NOFITY消息,这样就能够响应了。
void CXindowForm::OnInitialUpdate() {    CFormView::OnInitialUpdate();        /* 相当于CListCtrl::SetItemData(), 用于区别是哪个CXLabel */    m_add.SetCommand(1);}BOOL CXindowForm::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult) {    LPNMHDR pnmh = (LPNMHDR) lParam;        if(pnmh-code==NM_LINKCLICK)    {        CXLabel* pLabel = (CXLabel *)GetDlgItem(pnmh-idFrom);        CString str;        /* GetCommand() */        str.Format("d",pLabel-GetCommand());        AfxMessageBox(str);         if(m_pParent-GetSafeHwnd())         {             CListCtrl& listCtrl = ((CXindowView*)m_pParent)-m_pList-GetListCtrl();             int nCount = listCtrl.GetItemCount();              int nItem = listCtrl.InsertItem(nCount, "2003-8-15");             listCtrl.SetItemText(nItem, 1, "192.168.3.1");             listCtrl.SetItemText(nItem, 2, "www.vckbase.com");             listCtrl.SetItemText(nItem, 3, "编程");         }    }    return CFormView::OnNotify(wParam, lParam, pResult);}   
注:CXLabel控件来自CLabel类,增加了几个有效函数。

来源:https://www.tulaoshi.com/n/20160129/1483834.html

延伸阅读
标签: 电脑入门
您可以在 Explorer.exe 命令中使用以下参数。 参数 结果 /n 为默认选择内容打开一个新的单窗格窗口。 默认选择内容通常是安装 Windows 的驱动器的根目录。 /e 使用默认视图启动 Windows 资源管理器。 /e, 《object》 使用默认视图启动 Windows 资源管理器并把焦点定位在指定文件夹上。 /root, 《object》 打开指定对象的一个窗口视图。...
标签: windows 操作系统
在学习中遇到问题可以到 论坛 发贴交流! 更多Win7操作系统相关教程: http://www.jcwcn.com/article/special/200910/special_68.html 本教程为配合Windows 7正式发布,中国(www.jcwcn.com)专门推出了玩转Win7系列教程,在前几课中我们了解了win 7的开始菜单,现在我们来了解资源管理器及其相关窗口~~ 玩转Win7之资源管理器窗口 WIN...
我的主页:http://www.tommstudio.com/ unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, shlobj, activex, StdCtrls, FileCtrl,strUtils; const shcne_renameitem = $1; shcne_create = $2; shcne_delete = $4; shcne_mkdir = $8; shcne_rmdir =...
标签: 电脑入门
用过windows 7系统的同学都知道Win7任务栏放的快速启动工具条跟Windows XP是不一样的。XP的快速启动工具条里放的是快捷方式,可以随意修改,而Win7任务栏放的是锁定在任务栏的程序图标。按理说应该是Win7下更方便点,但是Win7打开资源管理器总是默认打开库而不是计算机(我的电脑),要打开我的电脑得先点开始再点计算机才行,这样很多人就不太...
标签: 电脑入门
最近有网友反馈电脑经常会出现每隔一段时间WINDOWS资源管理器自动重启的情况,严重影响到的用户使用电脑,那么资源管理器老是重启是怎么回事,又该如何解决呢?下面本文将与大家分享下如何解决windows资源管理器重启。 windows资源管理器重启提示 一:首先一起来看看windows资源管理器重启的产生原因有哪些: 产生windows资源管理器重启的...

经验教程

362

收藏

80
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部