Win32 状态栏用法
WIN32 状态控件用法
1.创建控件
状态栏类名:
STATUSCLASSNAME
|
#define STATUSCLASSNAMEW L"msctls_statusbar32" |

控件样式
dwStyle: 指定控件风格
SBARS_SIZEGRIP: 状态栏控件将包含状态栏右端的大小调整手柄.定位手柄类似于尺寸边界
它是一个矩形区域,用户可以单击并拖动以调整父窗口的大小.
SBT_TOOLTIPS: 使用这种风格来启用工具提示.
SBARS_TOOLTIPS: 与SBT_TOOLTIPS相同
当然还有窗口类的样式:WS_CHILD|WS_VIBLE
创建代码
|
LRESULT CALLBACK MyWindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { case WM_CREATE: { HWND hStatus = ::CreateWindowEx(0, STATUSCLASSNAME, NULL, WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, hWnd, (HMENU)1001, ((LPCREATESTRUCT)lParam)->hInstance, 0); }break; } return DefWindowProc(hWnd, uMsg, wParam, lParam); } |
控件消息
SB_ISSIMPLE: 检查状态栏控件以确定它是否处于简单模式.
SB_SETBKCOLOR: 设置状态栏中的背景颜色
SB_SETICON: 设置状态中显示的图标
SB_SETMINHEIGHT:设置状态窗口绘图区域的最小高度.
SB_SETPARTS: 设置状态窗口中分格数量,(以x坐标定位格子的位置)
SB_SETTIPTEXT: 为状态栏设置工具提示文本,必须有SBT_TOOLTIPS样式创建的提示工具提示
SB_SETUNICODEFORMAT:设置显示Unicode字符格式标志.
SB_SIMPLE: 指定状态窗口是显示简单文本还是显示由前一个SB_SETPARTS消息设置的所有窗口部分.
示例:
|
//将状态栏分为三段,最后为-1表示把剩余部分填满 int array[3] = { 100,200,-1 }; SendMessage(hStatus, SB_SETPARTS, 3, (LPARAM)array); //设置状态栏文本 SendMessage(hStatus, SB_SETTEXT, 0, (LPARAM)TEXT("第一部分")); SendMessage(hStatus, SB_SETTEXT, 1, (LPARAM)TEXT("第二部分")); SendMessage(hStatus, SB_SETTEXT, 2, (LPARAM)TEXT("第三部分")); //发送WM_SIZE消息用于重绘控件窗口 SendMessage(hStatus, WM_SIZE, 0, 0); |
自适应窗口大小
在父窗口的WM_SIZE消息中给控件发送些消息,让其重绘
|
case WM_SIZE: SendMessage(hStatus, WM_SIZE, 0, 0); break; |
通知消息

Win32 状态栏用法的更多相关文章
- Win32 配置文件用法
#include "stdafx.h"#include <Shlobj.h>#include <Shlwapi.h> #pragma comment(lib ...
- Android学习总结(十五) ———— Notification(状态栏通知)基本用法
一.Notification基本概念 Notification是一种具有全局效果的通知,它展示在屏幕的顶端,首先会表现为一个图标的形式,当用户向下滑动的时候,展示出通知具体的内容.我们在用手机的时候 ...
- win32 sdk 环境下创建状态栏
今天在学习状态栏,出了好多的问题,这里记录下. 要创建状态栏用:CreateStatusWindow CreateStatusWindow函数创建一个状态窗口,通常用于显示应用程序的状态.窗口通常显示 ...
- C# 调Win32 API SendMessage简单用法及wMsg常量
函数功能:该函数将指定的消息发送到一个或多个窗口.此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回.该函数是应用程序和应用程序之间进行消息传递的主要手段之一. 函数原型:LRESU ...
- win32 TreeCtrl控件通知消息, LVN_SELCHANGED和LVN_ITEMCHANGED用法
今天出了个奇怪的问题,当我在主窗口上创建一个用模板对话框的子窗口时, 在子窗口上放的TreeCtrl控件不响应LVN_SELCHANGED消息,也是晕死了, 我以为是消息捕获的问题,我在主窗口上也捕获 ...
- MyEclipse相关用法介绍
MyEclipse相关用法介绍 ================================================================================ 编辑: ...
- cocos2d-x 从win32到android移植的全套解决方案
引言:我们使用cocos2d-x引擎制作了一款飞行射击游戏,其中创新性地融入了手势识别功能.但是我们在移植过程中遇到了很多的问题,同时也发现网上的资料少而不全.所以在项目行将结束的时候,我们特地写了这 ...
- 自动创建WIN32下多级子目录的C++封装类
这是 WIN32 自动创建多级子目录的 C++ 封装类,用法简单. 封装没有采用类的静态函数方式,而是在构造函数里面直接完成工作.没什么具体的原因,只是当时做成这样了, ...
- duilib各种布局的作用,相对布局与绝对布局的的意义与用法
大多数刚使用duilib的朋友时候非常依赖duilib自带的设计器,用他可以拖拉控件,可视化的做出自己想要的界面.可是用一段时间就会发现原带的设计器有很多bug,时不时会崩溃,支持的控件数量有限,属性 ...
- sprintf()函数的用法
Visual C++ sprintf()函数用法 转:http://blog.csdn.net/masikkk/article/details/5634886 在将各种类型的数据构造成字符串时,spr ...
随机推荐
- 一些自托管(self hosted)服务的使用笔记
opengrok oracle的opengrok是一个项目代码查找工具,自建索引,类似工具有source insight 官方已经提供好了docker镜像,傻瓜式安装.不过增加新的项目源码时需要手动更 ...
- 在Linux驱动中使用proc子系统
在Linux驱动中使用proc子系统 背景 proc文件系统是个简单有用的东东:驱动创建一个proc虚拟文件,应用层通过读写该文件,即可实现与内核的交互. 本文适用于3.10以后的内核,v3.10以前 ...
- 题解:洛谷 P1137 旅行计划
标签:图论,拓扑,dp 题意 给定一张 \(n\) 个点 \(m\) 条边的 DAG,对于每个 \(i\),求以它为终点最多经过多少个点? 思路 由于是 DAG,求的是终点 \(i\) 经过的所有点, ...
- 背包DP——多重背包
多重背包也是 0-1 背包的一个变式.与 0-1 背包的区别在于每种物品有 k 个,而非一个. 朴素 直接把相同的每个物品视作各个单独的物品,没有关联,仅条件相同: 转换后直接用01背包的状态转移方程 ...
- 深耕分析型数据库领域,火山引擎ByteHouse入围《2024爱分析数据库厂商全景报告》
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群. 近日,爱分析发布<2024爱分析·数据库厂商全景报告>,报告中爱分析将数据市场从上至下划分为数据库服 ...
- C#进行图片压缩(对jpg压缩效果最好)
直接上代码 1 public static class ImageCompress 2 { 3 /// <summary> 4 /// 图片压缩 5 /// </summary> ...
- msgpack的使用
1.引入包 <!--msgpack依赖--> <dependency> <groupId>org.msgpack</groupId> <artif ...
- 动手学深度学习——CNN应用demo
CNN应用demo CNN实现简单的手写数字识别 import torch import torch.nn.functional as F from torchvision import datase ...
- 机器学习策略篇:详解数据分布不匹配时,偏差与方差的分析(Bias and Variance with mismatched data distributions)
详解数据分布不匹配时,偏差与方差的分析 估计学习算法的偏差和方差真的可以帮确定接下来应该优先做的方向,但是,当训练集来自和开发集.测试集不同分布时,分析偏差和方差的方式可能不一样,来看为什么. 继续用 ...
- Vulnhub-ICA01
简介 名称:ICA: 1 发布日期:2021 年 9 月 25 日 难度:容易 描述:根据我们情报网络的信息,ICA 正在开展一个秘密项目.我们需要弄清楚这个项目是什么.获得访问信息后,请将其发送给我 ...