1. Progress Bar Control Messages   
 PBM_DELTAPOS   
 PBM_GETPOS   
 PBM_GETRANGE   
 PBM_SETBARCOLOR   
 PBM_SETBKCOLOR   
 PBM_SETPOS   
 PBM_SETRANGE   
 PBM_SETRANGE32   
 PBM_SETSTEP   
 PBM_STEPIT

.h

 #ifndef REMOTECONTROL_H
#define REMOTECONTROL_H #include <QObject>
#include <windows.h>
#include <winuser.h> class RemoteControl : public QObject
{
Q_OBJECT
public:
explicit RemoteControl(QObject *parent = );
bool FindWindow(QString title);
void SetControlRemove(int id);
void SetControlText(int id, QString text);
void SetControlCheck(int id,bool check);
void SetControlButton(int id);
UINT SetControlProcessbar(int id);
private:
HWND m_hWnd;
}; #endif // REMOTECONTROL_H

.cpp

 #include "remotecontrol.h"
#include <Commctrl.h>
#include <QDebug> RemoteControl::RemoteControl(QObject *parent) :
QObject(parent)
{
} bool RemoteControl::FindWindow(QString title)
{
for(int i = ; i<; i++)
{
m_hWnd = ::FindWindowA(NULL, title.toStdString().c_str());
if(m_hWnd != NULL)
return true;
} qDebug()<<"Can't find window";
return false;
} //隐藏
void RemoteControl::SetControlRemove(int id)
{
HWND cid = ::GetDlgItem(m_hWnd,id);
if(cid == NULL)
return;
::ShowWindow(cid,SW_HIDE);
} //文本
void RemoteControl::SetControlText(int id,QString text)
{
HWND cid = ::GetDlgItem(m_hWnd,id);
if(cid == NULL)
return;
::SendMessage( cid ,WM_SETTEXT,,(LPARAM)text.toStdWString().data());
} //选中
void RemoteControl::SetControlCheck(int id,bool check)
{
HWND cid = ::GetDlgItem(m_hWnd, id);
if(cid == NULL)
return;
::CheckDlgButton(m_hWnd,id,check);
} //点击
void RemoteControl::SetControlButton(int id)
{
HWND cid = ::GetDlgItem(m_hWnd,id);
if(cid == NULL)
return;
::SendMessage(cid ,BM_CLICK,,);
} //进度条
UINT RemoteControl::SetControlProcessbar(int id)
{
HWND cid = ::GetDlgItem(m_hWnd,id);
if(cid == NULL)
return ;
::SendMessage(cid, PBM_SETPOS, , );
UINT result =::SendMessage(cid, PBM_GETPOS, (WPARAM), (LPARAM));
return result;
}

Windows MFC控件消息编程的更多相关文章

  1. MFC控件GDI编程

    MFC控件GDI编程 一丶学习内容 1.了解常用的GDI函数绘图. 2.使用常用的画笔画刷. 二丶常用的GDI函数绘图 上方则为我们常用的GDI函数了. 画线 矩形. 以及圆 等等. 2.1 画线代码 ...

  2. MFC控件编程之鼠标跟键盘消息

    MFC控件编程之鼠标跟键盘消息 在MFC中鼠标消息.键盘消息我们很常用.所以说一下. 鼠标消息分为客户区消息.跟非客户区消息. 一丶客户区消息 我们可以处理消息.来进行我们相应的函数即可. MFC添加 ...

  3. MFC控件编程之 按钮编辑框.静态文本的使用,以及访问控件的七种方法.

    MFC控件编程之 按钮编辑框.静态文本的使用以及访问控件的七种方法. 一丶按钮.静态文本的通用属性. 他们都有一个属性.就是可以输入标题内容.以及可以自定义控件ID. 创建一个MFC Dlg对话框. ...

  4. MFC控件编程进度条编写

    MFC控件编程进度条编写 一丶进度条编程需要用到的方法 进度条MFC已经帮我们封装好类了. 叫做 CProgressCtrl  进度条编程也很简单. 封装的方法也就那个那几个. GetPos()  获 ...

  5. MFC 控件编程之水平滚动条跟垂直滚动条

    MFC 控件编程之水平滚动条跟垂直滚动条 一点水平滚动条的操作 首先在操作滚动条的时候.我们要知道滚动条的一些属性. 比如我们要设置 最大值 最小值. 以及每次递增的值是多少.都要设置. 所有就有一个 ...

  6. MFC控件第一讲.DC编程

    MFC控件第一讲.DC编程 一丶简介 什么是DC,DC有什么用. DC成为设备描述符表. DC的作用就是可以进行绘制. 比如我们的窗口都是绘制出来的.  DC可以简单理解为.没一个窗口程序都有一块内存 ...

  7. MFC控件编程之组合框跟列表框

    MFC控件编程之组合框跟列表框 一丶简介 如果要使用组合框跟列表框.那么就要知道.组合框列表框是最核心的东西就是索引. 索引是从0开始的. 二丶组合框列表框常用的方法 AddString(字符串) 添 ...

  8. MFC控件编程之复选框单选框分组框

    MFC控件编程之复选框单选框分组框 一丶分组框 分组框 英文叫做 GroubBox 添加了分组框主要就是分组.好看.不重点介绍 二丶单选框 英文: Raido Button 单选框需要注意的事项 1. ...

  9. 【原创】多字节版本下MFC控件处理字符集的BUG

    工程项目属性: 字符集:多字节 stdafx.h文件中添加: #pragma comment(linker,"/manifestdependency:\"type='win32' ...

随机推荐

  1. java基础---->java中nio的使用(一)

    JDK 1.4 中引入的新输入输出 (NIO) 库在标准 Java 代码中提供了高速的.面向块的 I/O.今天我们就简单的学习一下nio的知识.我笑,便面如春花,定是能感动人的,任他是谁. nio的简 ...

  2. jquery将具有相同名称的元素的值提取出来放到一个数组内

    jquery将具有相同名称的元素的值提取出来放到一个数组内 var arrInputValues = new Array();  $("input[name='xxx']").ea ...

  3. handlebars Helper用法

    handlebars  Helper用法:  http://www.cnblogs.com/iyangyuan/archive/2013/12/12/3471357.html 逻辑运算符在handle ...

  4. 去掉第一次ssh连接的yes问题

    第一次执行的时候,有的机器可能会提醒输入ssh初次登录询问yes/no,如果要去掉这个yes/no的询问环节, 只需要修改本机的/etc/ssh/ssh_config文件中的"# Stric ...

  5. angular4 form表单验证

    <!-- novalidate 清除浏览器默认的校验行为 --> <form [formGroup]="formModel" (ngSubmit)="o ...

  6. js 常用 DOM 元素宽高

    提示:document.documentElement 和 document.getElementsByTagName('html')[0] 是一样的: 1.视口大小(不包括滚动条,视口字面理解当然是 ...

  7. 初级Java面试题 – SSM框架篇

    加入我的QQ群(701974765) 获取更多好用又好玩的软件,还有不定期发放的福利呦(- ̄▽ ̄)- Spring的优点/对Spring的理解 Spring的AOP编程 Spring的IOC Spri ...

  8. debian卸载旧内核

    debian卸载旧内核要先看看有哪些旧的内核,用命令: uname -a dpkg --get-selections |grep linux 如果你的内核是以kernel开头的就把上面的linux改成 ...

  9. CodeForces 732C Sanatorium

    C. Sanatorium time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  10. 【Python Programe】WSGI (Web Server Gateway Interface)

    Part1: What is a Web server? 一个位于物理服务器上的网络服务器(服务器里的服务器),等待客户端去发送request,当服务器接收到request,就会生成一个respons ...