一条语句改变进度条颜色及去掉进度条边框

一条语句改变进度条颜色及去掉进度条边框 一、        改变进度条颜色 在VC里想改变进度条颜色,在网上找了很多方法,都很麻烦,觉得很郁闷。后来想起在用VB做时,增经用API实现过,很简单。后来再一查,原来是SendMessage这个函数,几经试验,终于成功,高兴,与大家分享!!!!      代码如下:          m_Progress1.SendMessage(PBM_SETBKCOLOR,0,R

大家好,又见面了,我是你们的朋友全栈君。 

一、        
改变进度条颜色 
在 VC里想改变进度条颜色,在网上找了很多方法,都很麻烦,觉得很郁闷。后来想起在用VB做时,增经用API实现过,很简单。后来再一查,原来是SendMessage这个函数,几经试验,终于成功,高兴,与大家分享!!!!
      代码如下:    
      
m_Progress1.SendMessage(PBM_SETBKCOLOR, 0, RGB(0, 0, 255));//背景色为蓝色
m_Progress1.SendMessage(PBM_SETBARCOLOR, 0, RGB(255, 0, 0));//前景色为红色
 
       至于别的控件能不能按这种办法来改变颜色,我还没试过,大家可以试一试,如果可以,请留言告诉我,先谢谢了 。
以下摘自《新编 win32API大全》:
函数功能:该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。而函数 PostMessage不同,将一个消息寄送到一个线程的消息队列后立即返回。

    函数原型:LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam);

    参数:

    hWnd:其窗口程序将接收消息的窗口的句柄。如果此参数为HWND_BROADCAST,则消息将被发送到系统中所有顶层窗口,包括无效或不可见的非自身拥有的窗口、被覆盖的窗口和弹出式窗口,但消息不被发送到子窗口。

    Msg:指定被发送的消息。

    wParam:指定附加的消息指定信息。

    IParam:指定附加的消息指定信息。

    返回值:返回值指定消息处理的结果,依赖于所发送的消息。

    备注:需要用HWND_BROADCAST通信的应用程序应当使用函数RegisterWindowMessage来为应用程序间的通信取得一个唯一的消息。

    如果指定的窗口是由调用线程创建的,则窗口程序立即作为子程序调用。如果指定的窗口是由不同线程创建的,则系统切换到该线程并调用恰当的窗口程序。线程间的消息只有在线程执行消息检索代码时才被处理。发送线程被阻塞直到接收线程处理完消息为止。

    Windows CE:Windows CE不支持Windows桌面平台支持的所有消息。使用SendMesssge之前,要检查发送的消息是否被支持。

    速查:Windows NT:3.1及以上版本:Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:winuser.h;输入库:user32.lib;Unicode:在Windows NT环境下以Unicode和ANSI方式实现。

以下摘自 MSDN:
RGB(
red,
green,
blue
)
Arguments
red
Required. Number in the range 0-255 representing the red component of the color.
green
Required. Number in the range 0-255 representing the green component of the color.
blue
Required. Number in the range 0-255 representing the blue component of the color.
 
二、        
去掉进度条边框
m_Progress1.ModifyStyleEx(WS_EX_STATICEDGE,0);
m_Progress.Invalidate(false);

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159243.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月14日 上午8:00
下一篇 2022年7月14日 上午8:00


相关推荐

  • 菲尼克斯FL SWITCH SFN 16TX多端口交换机

    菲尼克斯FL SWITCH SFN 16TX多端口交换机菲尼克斯FLSWITCHSFN16TX多端口交换机2891933可提供标准温度(0°C…60°C)和宽温(-40°C…75°C)型号的设备窄型金属壳体上有16个端口,带冗余输入电压自适应与自交叉检测简化了安装和设置电缆安全锁定备选本地诊断指示,带LEDRJ45端口的传输速率为10/100Mbps,光纤端口的传输速率为100Mbps尺寸宽度70mm高度135mm深度110mm环境条件保护等级IP20环境温度(运行)0°C…60°C环境温度(

    2022年6月22日
    30
  • java之MD5

    java之MD5publicclassMD5{ staticfinalintS11=7; staticfinalintS12=12; staticfinalintS13=17; staticfinalintS14=22; staticfinalintS21=5; staticfinalintS22=9; staticfinalintS23=14; staticfinalintS24=20; stat..

    2022年7月8日
    26
  • (小白记录)使用c语言在Excel里面追加数据

    (小白记录)使用c语言在Excel里面追加数据局部代码为 FILE fp1 fp1 fopen C Users yf Documents VisualStudio Projects ReadTime ReadTime ReadTime xls a fp 指针指向文件头部 fopen 打开文件 fseek fp1 0 SEEK END fseek 指针定位到最后一个数据 if fp1 NULL printf 打开失败 n system PAUSE

    2026年3月26日
    2
  • java 事务回滚注解_Java Spring 事务回滚详解

    java 事务回滚注解_Java Spring 事务回滚详解这篇文章主要介绍了 javaSpring 事务回滚的相关资料 需要的朋友可以参考下 spring 事务回滚 1 遇到的问题当我们一个方法里面有多个数据库保存操作的时候 中间的数据库操作发生的错误 伪代码如下 publicmethod Dao1 save Person1 Dao1 save Person2 Dao1 save Person2 假如这句发生了错误 前面的两个对象会被保存到数

    2026年3月26日
    1
  • Spring Data Jpa系列教程(一)——–入门

    Spring Data Jpa系列教程(一)——–入门大渣好 我是小小书生 现在开始 我们来学习船新的一门技术 SpringDataJp 它是一个 额 我百度一下 nbsp JPA JavaPersiste 是 Sun 官方提出的 Java 持久化规范 它为 Java 开发人员提供了一种对象 关联映射工具来管理 Java 应用中的关系数据 他的出现主要是为了简化现有的持久化开发工作和整合 ORM 技术 结束现在 Hibernate TopLink

    2026年3月18日
    2
  • sql server 2012 报表开发(1) 如何使用Reporting Service 2012制作报表

    sql server 2012 报表开发(1) 如何使用Reporting Service 2012制作报表ReportingSer 也就是我们平时经常看到的 报表商业智能 BI 基于 SQLServer 的报表制作工具 这里的例子 是如何通过 visualstudio 开发 ReportingSer 报表 1 打开 sqlserver201 创建 一个存储过程 ALTERproc dbo ProTest2 StartSubmitT

    2026年3月26日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号