本人是上海同济大学软件学院的一个学生,在做一个期末项目的时候希望能够模拟“最小化”的一个动画效果,所以需要获得程序的任务栏按钮位置。但是从网上搜索的结果出乎意料的沮丧,好像真的没有一篇文章给出了完整的答案。所以今天努力了一下,给出一个正确的方法,代码直接就贴下面了用于交流。

由于按钮不是窗口,所以除非微软提供函数接口,否则我们无法得知任务栏是如何绘制的。

//头文件:

#include"Commctrl.h"

从网上看到,对一个TabButton(任务栏)可以发送以下消息(前题是有上述头文件)

TB_GETBUTTONTEXT

TB_GETBUTTONINFO

TB_BUTTONCOUNT

等等,但是http://topic.csdn.net/t/20030423/13/1697563.html这个文章只介绍了TB_BUTTONCOUNT,原因是什么呢?大家可以自己试一下,对着一个找到的任务栏窗口发送TB_GETBUTTONINFO有什么结果,我的结果是报了一个系统错误(从后面可以知道,是访问了一块没有被开辟的内存),然后任务栏重启(句柄被修改了,说明是重启过了)。

那么仔细看msdn

TB_GETRECT wParam = (WPARAM)(INT) 

获取程序在任务栏中按钮的位置的方法相关推荐

  1. 微信小程序云开发CMS中WebHook功能的使用方法

    微信小程序云开发CMS中WebHook功能的使用方法 官方文档 Webhook 是什么呢,翻译过来就是网页钩子.它的用处是,当我们在CMS进行增添查改的操作后,会自动回调webhook函数,我们就可以 ...

  2. c语言找字符串的位置,C语言开发中查找字符串位置的方法

    C语言开发中,我们可以使用strstr函数找到字符串,程序员在这个时候要怎么操作呢?别着急,今天是爱站技术频道小编为大家介绍的C语言开发中查找字符串位置的方法,一起参考看看吧! C语言strchr() ...

  3. Qt笔记-窗口程序在任务栏中隐藏及永久置顶

    这里主要是因为想搞个水印的程序. 感觉视频加水印比较麻烦,不如自己写个加水印的程序. 如下的效果: 这里有两点要注意,一个是在任务栏中隐藏: 主要是 Qt::Tool setWindowFlags(Q ...

  4. keil c语言 延迟程序,Keil C51程序设计中几种精确延时方法

    前几天时间在做一个基于51单片机开发板的等精度频率计,用LCD1602液晶显示的,晶振是22.1184MHZ,用得是测频率法,目的是想做到能够测试0--900KHZ的信号. 液晶显示部分花了我好几天才 ...

  5. Adams中改变模型位置的方法

    一.Adams改变模型的初始位置 1.将模型在solidworks/ug等建模软件中调整好位置后重新导入,如果重新导入过于麻烦考虑方法2 2.一种巧妙的改变方法是设置一个初始位姿的仿真路线,在仿真结束 ...

  6. 微信小程序隐藏菜单栏目下转发按钮的几个方法

    隐藏微信小程序顶部的转发按钮 适用范围:所有的微信小程序 方式一.去除页面上的分享代码片段如下,删除即可 //删除页面里的这个分享函数 onShareAppMessage: function (opt ...

  7. android espresso跨程序,在Espresso Android中正确使用IdlingResource的方法

    我正在用Espresso编写UI测试.应用程序与服务器紧密配合,因此在许多情况下,我需要等待任意一个值进行计算,或者获取和显示数据.Espresso建议使用IdlingResource. 我的Idli ...

  8. 微信小程序开发抽取HTML中数据的最快方法是正则表达式,而不是循环

    做项目的过程中,刚好用到这个变量,因为用微信小程序获取了网页源数据,但是是一堆HTML文档代码,若用循环来处理抽取里面我想要的信息,太过于复杂,所以着手用正则表达式来做. 方法如下: 一.从网页上获取 ...

  9. 利用条形码生成器应用程序在Word 2013中轻松制作条形码的方法

    转自:http://www.weidianyuedu.com/content/3812000537155.html 打开Office 2013应用程序>CODE 39 Barcode>Ad ...

最新文章

  1. 独家 | 手把手教你用PyTorch快速准确地建立神经网络(附4个学习用例)
  2. Gis 热点技术分析
  3. android 减速动画,Android View Animation
  4. 颠覆教科书:打破50年来的认知,DNA同义突变会影响蛋白质折叠,进而影响细胞生长...
  5. IaaS、PaaS和SaaS的区别
  6. IT兄弟连 Java语法教程 编写Java源代码
  7. C#正则表达式——网游角色起名仅允许汉字、字母、数字、底划线
  8. CXF +ws-security 和HttpURLConnection实现webservic请求
  9. 遗传算法matlab_遗传算法简单介绍与MATLAB实现
  10. 在oracle中bpa是什么意思,BPA是什么意思_BPA的翻译_音标_读音_用法_例句_爱词霸在线词典...
  11. Core的.mli文件在哪里
  12. Springboot毕业设计毕设作品,网上图书商城系统 开题报告
  13. 2020.3.31Java学习笔记
  14. linux shell -常用脚本
  15. netcore 开源cms
  16. 在疫苗生产、包装、入库、放行、质量管理、电子数据采集/输入应用电子签名
  17. 软件测试工程实训综合管理平台
  18. clipboard.js实现无flash复制内容到剪贴板
  19. 非走不可的弯路 [转]
  20. 一个程序员转型 AI 工程师的故事

热门文章

  1. 仿Bilibili iOS客户端 练习案例源码
  2. imagemagick整理
  3. php imagemagick安装,php ImageMagick windows下安装教程
  4. mysql cdc采集_浅谈CDC在微服务中的应用
  5. 仿生女朋友会梦见电子男朋友吗?——能模仿女神说话声音的闲聊QQ机器人
  6. 没想到吧,360 浏览器要收费了,六大尊享权益,味同嚼蜡,味如鸡肋,如此乏味...
  7. 520情人节程序员的浪漫告白~html+css+js浪漫星空❤爱心3D相册 (含音乐)
  8. clearTimeout无效
  9. 周鸿祎的“寄生战略”
  10. Windows安全配置技术【转】