win32 sdk 环境下创建状态栏
今天在学习状态栏,出了好多的问题,这里记录下.
要创建状态栏用:CreateStatusWindow
CreateStatusWindow函数创建一个状态窗口,通常用于显示应用程序的状态。窗口通常显示在父窗口的底部,它包含指定的文本。
HWND CreateStatusWindow(
LONG, //状态栏样式
LPCTSTR, //第一格要显示的字符串指针
HWND, //父窗口句柄
UINT); //状态窗口的控制标识符
参数
【样式】
状态窗口的窗口样式。此参数必须包含WS_CHILD样式,并且还应包含WS_VISIBLE样式。
【lpszText】
指向指定第一个部分的状态文本的以空值终止的字符串的指针。
【hwndParent】
处理到父窗口。
【wID】
状态窗口的控制标识符。窗口过程使用此值来标识发送到父窗口的消息。
返回值
如果函数成功,则返回值是状态窗口的句柄。
如果函数失败,返回值为NULL。
备注
CreateStatusWindow函数调用CreateWindow函数创建窗口。它将参数传递给CreateWindow而不进行修改,并将position,width和height参数设置为默认值。
所以也可以用CreateWindow来创建,这个以后再说.
//我这是创建的全局状态栏句柄HWND hWndStatus
//还要自己定义一个状态栏的ID号
#define IDC_STATUS1 10001
在OnInitDialog()函数中添加:
hWndStatus = ::CreateStatusWindow(WS_CHILD | WS_VISIBLE | SBS_SIZEGRIP,
NULL, m_hWnd, IDC_STATUS1); //创建状态栏
RECT rect;
GetClientRect(m_hWnd, &rect); //获得窗口的尺寸
int nWith = rect.right / 6; //把窗口分成六份
//这是每格的宽度,搞不明白为啥子是这个样子,头有点大,你说是x坐标值也不对,
//我这是分成三个格子,第一个格子点了4份,所以*了个4,后面二个都是占一份,
//如果是最后一格填满剩余的空间就把最后一个写成-1,数组格式就是:
//int nWiths[3]={nWitch,nWitch*2,-1};
int nWiths[3] = { nWith * 4,nWith * 5,nWith * 6 }; ::SendMessage(hWndStatus, SB_SETPARTS, 3, (LPARAM)(long)nWiths);
::MoveWindow(hWndStatus, 0, 0, 0, 0, TRUE);
基本上就是这个样子了

一片空白,没有也东西呢.
//写到状态中相应的格子中,WPARAM参数就是格式的索引值
::SendMessage(hWndStatus, SB_SETTEXT, 0, (long)TEXT("准备就绪"));
::SendMessage(hWndStatus, SB_SETTEXT, 1, (long)TEXT("系统时间"));
::SendMessage(hWndStatus, SB_SETTEXT, 2, (long)TEXT("系统时间2"));

最后在窗体WM_SIZE消息中通知状态栏自己适应窗体大小,
RECT rect;
GetClientRect(m_hWnd, &rect);
int nWith = rect.right / 6;
int sWiths[3] = { nWith * 4 ,nWith * 5,nWith * 6 }; ::SendMessage(hWndStatus, SB_SETPARTS, 3, (LPARAM)(long)sWiths);
::MoveWindow(hWndStatus, 0, 0, 0, 0, TRUE);
差不多就是这样了,其他的以后再研究吧
win32 sdk 环境下创建状态栏的更多相关文章
- windows环境下创建 .文件夹
一.windows环境下创建 .文件夹 1.新建一个文件夹 2.重命名为.properties.(名字前后都加点) 二.windows环境下创建 .文件 1.上面的方法对文件同样适用 2.运行CMD, ...
- ROS 教程之 navigation :在 catkin 环境下创建costmap layer plugin
在做机器人导航的时候,肯定见到过global_costmap和local_costmap.global_costmap是为了全局路径规划服务的,如从这个房间到那个房间该怎么走.local_costma ...
- centos环境下创建数据库和表的方法
centos环境下创建数据库和表的方法 //查询数据库的命令: mysql> SHOW DATABASES; +--------------------+ | Database ...
- 多线程编程之Windows环境下创建新线程
转自: http://www.cnblogs.com/lgxqf/archive/2009/02/10/1387480.html 在 Win32 API 中,创建线程的基本函数是 CreateThre ...
- 在Windows中单机环境下创建RabbitMQ集群
本文根据:http://www.360doc.com/content/15/0312/17/20874412_454622619.shtml整理而来 RabbitMQ具有很好的消息传递性能,同时又是开 ...
- 在Win32 Application 环境下实现MFC窗口的创建
// Win32下MFC.cpp : Defines the entry point for the application.// #include "stdafx.h" clas ...
- Win32 SDK 编程开始, 创建窗口, 消息的处理, 消息循环
Windows SDK 编程的一般步骤为: 1. 注册窗口类, 使用到的结构 WNDCLASSEX, 函数 RegisterClassEx. 2. 创建窗口, 函数 CreateWindowEx. 3 ...
- cocos2d-x v3.0各个环境下创建项目以及编译、执行官方DEMO
摘自:https://github.com/cocos2d/cocos2d-x/ 怎样创建一个新项目 How to start a new game Download the code from co ...
- docker 环境下创建 overlay 网络方案
一.环境 三台机器,其中一台安装 consul(192.168.1.21), 两台创建网络(192.168.1.32,33) 二.实现步骤 1.构建环境 1)三台机器部署docker环境 2)选择一台 ...
随机推荐
- P2240 【深基12.例1】部分背包问题
P2240 [深基12.例1]部分背包问题 题目描述 阿里巴巴走进了装满宝藏的藏宝洞.藏宝洞里面有 N(N \le 100)N(N≤100) 堆金币,第 ii 堆金币的总重量和总价值分别是 m_i,v ...
- yii\filters\AccessControl 访问权限控制
Class yii\filters\AccessControl 所有类 | 属性 | 方法 继承 yii\filters\AccessControl » yii\base\ActionFilter ...
- 第六章 Sleuth--链路追踪
修整了2天,我们继续接着上篇 第五章 Gateway–服务网关 继续来讲SpringCloud Alibaba全家桶中的 Sleuth 链路追踪 组件 喜欢记得点关注哦 6.1 链路追踪介绍 在大型系 ...
- day020|python之面向对象基础2
面向对象基础2 目录 面向对象基础2 7 对象与类型 7.1 类即类型 7.1.1 变量的三个指标 7.1.2 变量类型 7.2 list.append()方法原理 8 对象的高度整合 8.1 通过面 ...
- ELK原理介绍
本篇转载自:https://www.cnblogs.com/aresxin/p/8035137.html 为什么使用日志系统: 日志系统记录了系统运行.业务处理的方方面面,在故障排除.业务分析.数据挖 ...
- 现代JavaScript—ES6+中的Imports,Exports,Let,Const和Promise
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://www.freecodecamp.org/news/learn-modern-jav ...
- 浅谈 WebRTC 的 Audio 在进入 Encoder 之前的处理流程
在 WebRTC 中,Audio 数据在被送入编码器之前,有 2 大部分需要特别关注,一是数据采集,二是 Audio Processing. 作者:方来,技术专家,从事 voip 应用开发. 数据采集 ...
- java中将文件夹里面的文件复制到指定的文件夹(java IO)
//现在制定路径下创建名称为左侧的文件夹 public class Copy { public static void main(String[] args) { //原始文件地址 File srcF ...
- Screaming Frog SEO Spider页面分析工具使用方法
一. 下载地址:https://www.screamingfrog.co.uk/seo-spider/ 二. 使用教程 链接1: https://blog.csdn.net/a055350/art ...
- SpringBoot文件上传配置
/** * 文件上传配置 * @return */ @Bean public MultipartConfigElement multipartConfigElement() { MultipartCo ...