VC学习笔记:状态栏
原文链接: http://www.cnblogs.com/skyseraph/archive/2010/11/27/1889952.html
实例学习
1 新建对话框程序
2 为Dlg类添加成员变量数 CStatusBar m_StatusBar; 在对话框上添加进度条控件并关联变量m_Progress
3 在Dlg类OnInitDialg中添加如下代码
/*新建数组*/
UINT array[6];
for(int n=0;n<6;n++)
{
array[n] = 1001 +1;//为数组赋值
}
/*① 创建状态栏*/
m_StatusBar.Create(this);//默认ID
/*② 添加面板*/
m_StatusBar.SetIndicators(array,sizeof(array)/sizeof(UINT));//求数组元素 【方法】
/////参数说明:面板ID、数组元素数量
/*③ 设置面板宽度*/
CRect rect;
GetClientRect(rect);
UINT ParentWidth = rect.Width()/6;
for( int i=0;i<6;i++)//根据面板数循环
{
m_StatusBar.SetPaneInfo(i,array[i],0,ParentWidth);//设置面板宽度
}
/*④ 设置面板文本*/
m_StatusBar.SetPaneText(0,"当前用户:");//设置面板文本
m_StatusBar.SetPaneText(1,"Sky");
m_StatusBar.SetPaneText(2,"当前状态:");
//系统时间获取并设置到面板文本上
CTime time = CTime::GetCurrentTime();
m_StatusBar.SetPaneText(4,"当前时间:");
m_StatusBar.SetPaneText(5,time.Format("%Y-%m-%d"));
/*⑤ 显示状态栏*/
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);//显示状态栏
/////在状态栏上显示控件 【思路】
RECT m_rect;
m_StatusBar.GetItemRect(3,&m_rect);//获得显示控件的面板区域
//参数说明:面板ID、面板的显示区域
m_Progress.SetParent(&m_StatusBar);//设置进度条的父窗口为状态栏
m_Progress.MoveWindow(&m_rect);//
m_Progress.ShowWindow(SW_SHOW);
m_Progress.SetRange(0,30);
m_Progress.SetPos(15);
/////带滚动字幕的状态栏 待补充。。。
。。。
/*⑥ 状态栏随对话框窗口大小而变化*/
//关于此方法请查阅"界面技巧" 之 "控件大小随窗口而调整"
m_Resize.SetOwner(this);
m_Resize.SetResize(AFX_IDW_STATUS_BAR,PK_BOTTOM_LEFT,PK_BOTTOM_RIGHT);//AFX_IDW_STATUS_BAR为状态栏默认的ID
【思路总结】
创建CStatusBar类变量;创建状态栏create;添加面板setIndicators;设置面板宽度SetPaneInfo;设置面板文本SetPaneText;显示状态栏RepositionBars;状态栏随窗口变化
VC学习笔记:状态栏的更多相关文章
- 孙鑫VC学习笔记:多线程编程
孙鑫VC学习笔记:多线程编程 SkySeraph Dec 11st 2010 HQU Email:zgzhaobo@gmail.com QQ:452728574 Latest Modified ...
- VC++ 学习笔记(序):神一样的语言
总的来说,我觉得VC++是一门神一样的语言——它是公认最强大.最复杂的:它一切以效率为第一要务,却又不肯落伍,拼命兼容现在的新的语言设计特点.本来在别的语言很容与就避开的问题,在这里要用很高的技巧去设 ...
- VC学习笔记:对话框
VC学习笔记:对话框 SkySeraph NOV.11st 2009 HQU Email-zgzhaobo@gmail.com QQ-452728574 Latest Modified Date:O ...
- 【VC++学习笔记一】MFC操作Excel
最近在做一个读取Excel的功能,之前也做过相关的,但总是零零闪闪的,趁着正在劲头上,归纳一下: 利用Automation添加相关的类,在Excel2010中可以在安装文件夹下直接点击Excel.ex ...
- VC++ 学习笔记(三):摩登之路——C++/CLI简介
在Windows上,除非我们必须得用C++来写界面,否则我会选择避免,避免学习和使用MFC.替代的方案是用C#来做界面,然后用C++/CLI来连接C#和Native C++.那么问题来了,C++/CL ...
- VC++ 学习笔记(二):VC++与C、VB和C#
罗马不是一天建成的,VC++的也不是凭空产生的——它一直标榜自己的从C发展而来的.VB好像是专门为了羞辱VC++而创建的.C#呢,是微软类C语言的新秀——其实也不新了.乱吧?貌似挺乱的,其实这里有章可 ...
- VC++ 学习笔记(一):如何开始
毫无疑问,学习C++是一件痛苦的事情. 我大概十年前接触C++.那是在学校里,准备考研究生,某学校要求考C++.我就开始一点一点学习,学习的过程还是比较舒服的.不得不说,就古典C++的理论,钱老讲的还 ...
- VC学习笔记---ATL MFC CLR三个库的区别
MFC.ATL和CLR是VC2005内置的三大库,涵盖了Windows的各种开发方法和开发应用.当然关于C++开发的库不止这三个,不过这三个是微软推荐. 从编程所处层次而言,WIN32为最底层,其次是 ...
- VC++ 学习笔记(四):停止还是暂停这个系列
我已经很久没有更新这个话题了,原因是多方面的,比如比较忙,比如我参与的项目不使用C++.最近因为需要在C#的客户端中调用第三方的C++API,又想起了这个话题.在跟公司里的C++方面专家聊过之后,我有 ...
随机推荐
- android中ListView控件最简单的用法
创建一个活动,在xml文件中添加一个ListView控件,id定义为list1,并且设置为满屏显示,代码如下: <ListView android:id="@+id/list1&quo ...
- Centos7中firewalld防火锁墙的使用
一.服务控制 启动: systemctl start firewalld 查看状态: systemctl status firewalld 停止: systemctl disable firewal ...
- MobX快速入门教程(重要概念讲解)
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7372119.html 一:Mobx工作流程图 二:MobX涉及到的概念 1:状态state 组件中的数据. 2 ...
- ACE中的参数截断工具-truncate
变量截断工具是将类型A变量赋予类型B变量时使用,可自行判断变量是否需要截断,并且自动进行类型转换. 其全部为c实现 其入口为: ACE_Utils::truncate_cast<int> ...
- C# 将一个string数组转换为int数组
int[] channelCIdArr = Array.ConvertAll(channelIdStr.Split(','),s=>int.Parse(s));
- mysql查询高级用法
联合查询 select a.* , b.adress , b.name from a , b where a.sbNo = b.cdid order by a.sbNo , a.STime selec ...
- mysql触发器 学习
1. 说明: 触发器的定义就是说某个条件成立的时候,你触发器里面所定义的语句就会被自动的执行.因此触发器不需要人为的去调用,也不能调用.然后,触发器的触发条件其实在你定义的时候就已经设定好 ...
- spring boot 配置动态刷新
本文测试使用的spring cloud版本为: Dalston.SR1 很多朋友只知道spring cloud config可以刷新远程git的配置到内存中, 却不知道spring cloud con ...
- win7 远程桌面连接centos 6.5
首先安装tigervnc-server: yum install tigervnc-server 安装好后,设置 vi /etc/sysconfig/vncservers 'man vncpasswd ...
- Linux特殊的文件控制权限FACL
对文件设置特殊的权限,FACL(File Access Control List) ACL简介 基本ACL操作 getfacl 查看文件权限 setfacl 设定acl权限 设置file ...