Windows资源管理器Web视图界面

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

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

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

Windows资源管理器Web视图界面



作者/祝晓斌

(本文来源于图老师网站,更多请访问http://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类,增加了几个有效函数。

来源:http://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打开资源管理器总是默认打开库而不是计算机(我的电脑),要打开我的电脑得先点开始再点计算机才行,这样很多人就不太...
标签: 电脑入门
在任意文件夹中通过更改您的视图按钮来选择设置好自己所喜好的方式,比如列表 然后点击左上方第一个组织按钮并从中选择文件夹和搜索选项,弹出文件夹选项窗口 接着切换到查看选项卡,点击文件夹视图下的第一个应用到文件夹按钮,并且在弹出的是否让这种类型的所有文件夹与此文件夹的视图设置匹配?提示窗口中点击是按钮进行确认,最后点...

经验教程

701

收藏

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