首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
MFC GetSafeHwnd() 与FindWindow
2024-09-01
MFC学习笔记(一)
个人对MFC技术一直都很感兴趣,因为能够做出漂亮绚丽的界面应该是一件十分有成就感的事情. 学习的参考课本为北京博彦科技发展有限责任公司翻译的Jeff Prosise著的<MFC Windows程序设计(第2版)>. 对于MFC本阶段的学习主要采用标题:MFC-01-Chapter0x:Title MFC系列学习较为繁琐,希望自己能够坚持. Come on baby don't be shy!
MFC注册窗口类以及FindWindow按窗口类名查询
很多玩游戏的人都知道一般游戏客户端程序是不允许双开的,就是说在同一游戏在启动的时候,是无法打开多个窗口.很多其他软件如酷狗播放器等也是这样.如果把打开的窗口最小化,这时重新启动程序,最小化的窗口会被显示,而不是重新开一个窗口. 今天突然想把我自己以前做的音乐播放器, 也加这么一个功能.查了点资料,主要用到了FindWindow这个函数. 原型如下: HWND FindWindow ( LPCSTR lpClassName, //输入窗口的类名,其实需要是注册过的类名才行,否则是要报错
MFC注册窗口类以及FindWindow按窗口类名查询(避免用#32770获取窗口句柄)
呵呵,最近在研究SendMessage函数,其中需要用到m_hWnd,之后延伸着又尝试获得窗口的句柄,于是遇到了FindWindow函数,原型如下: HWND FindWindow ( LPCSTR lpClassName, //输入窗口的类名,其实需要是注册过的类名才行,否则是要报错或者查找失败的. LPCSTR lpWindowName, //输入窗口的名称,就是窗口上面蓝色的那行玩意儿写的字. ); 对于这个函数,如果按照窗口的名称查找,相信大家都非常简单,因为名称在rc文件里,是已
MFC学习笔记
获取窗口句柄 FindWindow 根据窗口名获取 GetSafehWnd 取你程序所在窗口类的句柄 GetActiveWindow 取当前活动窗口句柄 AfxGetMainWnd 取主窗口句柄 GetForegroundWindow 取前台窗口句柄 窗口对象和CWnd对象,Attach和Detach函数 CWnd对象实际上并没有把整个Windows对象都包装在其中,它只是有一个窗口句柄.(在M
[转载]从GetSafeHwnd()和GetSafeHandle()分析句柄和指针
GetSafeHwnd()和GetSafeHandle()的主要区别: 1.使用者不同: (1)窗体使用: GetSafeHwnd()用于获取窗体的安全句柄(即HWND),有了HWND我们就可以方便的对HWND指向的窗体进行所需的操作了: (2)GDI对象使用: GetSafeHandle(),用于获取GDI对象的句柄. 注意:在使用指针时强烈建议这么做: // pSomeWnd 为一个窗体的指针 if ( NULL != pSomeWnd && NULL != pSomeWnd->
MFC发送自定义消息-PostMessage和SendMessage
PostMessage:把消息投放到线程的消息队列,不能消息被处理就立即返回SendMessage:消息被处理完后才返回 几种发送消息的写法: ::PostMessage(GetSafeHwnd(), WM_USER_THREADEND, 0, 0); //GetSafeHwnd()表示得到当前窗口句柄,所以这条语句是发送给当前窗口 GetParent()->PostMessage(WM_USER_THREADEND, 0, 0);//发送给父窗口 this->PostMessa
【转】MFC窗口句柄各类指针获取函数
原文网址:http://www.pythonschool.com/CPP_JHK/5003.html 获取所在类窗口的句柄 this->m_hwnd; // this是一个指针,指向当前类的实例 主窗口的句柄,获取自身窗口句柄 AfxGetMainWnd()->m_hWnd; // 在主窗口类中,或是子窗口类中,获取主窗口句柄的方法 如:::SendMessage(AfxGetMainWnd()->m_hWnd , WM_MY_DOSOME , 0 ,(LPARAM)i); this-&
(转载博文)MFC 窗口句柄获取
句柄获取方法(获取该窗口的句柄后,即可向该窗口类类发送消息.处理程序):0.获取所在类窗口的句柄: this->m_hwnd 1.主窗口的句柄: 无论在主窗口类内,还是子窗口类内,获取主窗口句柄的方法: AfxGetMainWnd()->m_hWnd, 如:::SendMessage(AfxGetMainWnd()->m_hWnd , WM_MY_DOSOME , 0 ,(LPARAM)i); 在窗口类中 this->m_hWnd 或者this->GetSafeHwnd()
C++ MFC常用函数(转)
WinExec() ExitWindowsEx() GlobalMemoryStatus() GetSystemInfo() GetSystemDirectory() GetWindowsDirectory() GetTaskmanWindow() //user32.dll中 获取任务栏窗口句柄 OpenProcessToken()打开一个进程的访问令牌 GetCurrentProcess()获取本进程句柄 LookupPrivilegeValue()修改进程权限 AdjustTokenProv
VC/MFC 编程技巧大总结
1 toolbar默认位图左上角那个点的颜色是透明色,不喜欢的话可以自己改. 2 VC++中 WM_QUERYENDSESSION WM_ENDSESSION 为系统关机消息. 3 Java学习书推荐:<java编程思想> 4 在VC下执行DOS命令 a. system("md c:\\12"); b. WinExec("Cmd.exe /C md c:\\12", SW_HIDE); c. ShellExecute ShellExecute(NULL,
VC++ GetSafeHwnd()和GetSafeHandle()
GetSafeHwnd()和GetSafeHandle()的主要区别: 使用者不同: (1)窗体使用:GetSafeHwnd()用于获取窗体的安全句柄(即HWND),有了HWND我们就可以方便的对HWND指向的窗体进行所需的操作了: (2)GDI对象使用:GetSafeHandle(),用于获取GDI对象的句柄. 注意:在使用指针时强烈建议这么做: // pSomeWnd 为一个窗体的指针 if ( NULL != pSomeWnd && NULL != pSomeWnd->GetS
MFC常用函数总结
1.MFC编辑框.静态文本框相关的常用函数 <1>GetDlgItemText(ID ,str) 作用:从对话框中获取文本 第一个参数为要获取的编辑框(或者静态文本框.单选按钮等可以显示内容的控件)的ID,第二个参数为字符串(Cstring 类型)的变量,获取的文本存储在str中. <2>SetDlgItemText(ID,str) 作用:将字符串显示在控件中 第一个参数为要显示的编辑框(或者静态文本框.单选按钮.组合框等可以显示内容的控件)的ID,第二个参数为字符串(Cstrin
MFC中获取各个窗口之间的句柄或者指针对象的方法
MFC在非常多的对话框操作中,我们常常要用到在一个对话框中调用还有一个对话框的函数或变量.能够用例如以下方法来解决. HWND hWnd=::FindWindow(NULL,_T("Sphere")); //得到对话框的句柄 C***Dialog* pWnd= (C***Dialog*)C***Dialog::FromHandle(hWnd); //由句柄得到对话框的对象指针 pWnd->xxx( ); //调用C***Dialog中的函数xxx(
MFC 获得各类指针、句柄的方法(转)
原文转自 https://blog.csdn.net/abcjennifer/article/details/7480019 1.MFC中获取常见类句柄<视图类,文档类,框架类,应用程序类> 本节为VC中常用的文档类,视图类,框架类,应用程序类,自定义类中获取其它四个类的方法: (1) GET App AfxGetInstanceHandle() AfxGetApp() (2) GET Frame->View->Document SDI AfxGetMain
MFC窗口消息PostMessage和SendMessage
以前这些消息用得比较少,但是今天碰到了个事儿,我看非用消息不可. 事情是这样的,我在线程中需要刷新对话框上面的内容,但是每每执行到UpdateData时就出现了断言错误. 查了相关资料,发现这个可能是多个模块调用同一个方法出现的问题.反正照我之前的逻辑走不通. 我现在将更新对话框信息的函数,通过线程中发窗口消息,让对话框的消息处理函数来负责处理我自定义的消息,为我刷新对话框数据. // http://blog.csdn.net/a8082649/article/details/7733527 1
MFC获取各窗口指针句柄
MFC在很多的对话框操作中,我们经常要用到在一个对话框中调用另一个对话框的函数或变量.可以用如下方法来解决. HWND hWnd=::FindWindow(NULL,_T("Sphere")); //得到对话框的句柄 C***Dialog* pWnd= (C***Dialog*)C***Dialog::FromHandle(hWnd); //由句柄得到对话框的对象指针 pWnd->xxx( ); //调用C***Dialog中的函数xxx();以上参考:
MFC获取各类指针句柄
最近有些人在问MFC编程一些要点,有一些句柄的获取.指针的获取是常见的问题,本文将对这些问题做以解释,参考了前人的笔录(见reference),希望能够帮助大家更方便地进行MFC程序开发. 一般我们使用的框架是VC提供的Wizard生成的MFC App Wizard(exe)框架,无论是多文档还是单文档,都存在指针和句柄获取和操作问题.本文中将针对各类句柄的获得.指针的获得以及MFC中常见应用进行阐述并举例. 本文内容索引: ===================================
MFC获取各个窗体(体)之间的指针(对象)
MFC在非常多的对话框操作中,我们常常要用到在一个对话框中调用还有一个对话框的函数或变量.能够用例如以下方法来解决. HWND hWnd=::FindWindow(NULL,_T("Sphere")); //得到对话框的句柄 C***Dialog* pWnd= (C***Dialog*)C***Dialog::FromHandle(hWnd); //由句柄得到对话框的对象指针 pWnd->xxx( ); //调用C***Dialog中的函数xxx(
MFC窗口通过OpenCV显示图片
思路非常讨巧,就是将namedWindow创建的窗口的客户区贴到MFC的图片控件里面去,然后将剩下的窗口框架隐藏掉,代码如下: cv::Mat img = cv::imread("./test.jpg"); cv::namedWindow("test", cv::WINDOW_AUTOSIZE); HWND hWnd = static_cast<HWND>(cvGetWindowHandle("test")); if (!hWnd)
MFC的窗口句柄
1.窗口.控件的指针和句柄的相互转化 1)指针转化为句柄在MFC应用程序中首先要获得窗口的指针,然后将其转化为句柄 CWnd* pWnd; HANDLE hWnd = pWnd->GetSafeHwnd(); 2)句柄转化为指针在MFC应用程序中首先获得对话框控件的句柄,然后获得其指针HANDLE hWnd;GetDlgItem(IDC_xxx,&hWnd);CWnd * pWnd = FromHandle(hWnd); 获得程序窗口指针的办法: a.获得主框架窗口指针(任何时候都可以用,只
MFC 静态文本的自绘 空心字的实现
想在对话框里,显示几个字是很简单的,只要用静态文本的输出就可以了.然而有时候我们需要显示特效的字,我们希望显示的文字就像Word里的艺术字一样,看起来美观.这时我们可以重写CStatic类.用DrawItem方法重绘. 首先,我们想要激活CStatic控件的自绘属性,这样DrawItem才能有效.我们发现用激活CButton自绘属性的方法那样来激活 CStatic控件的自绘属性是不行的.他们的激活方式是不一样的. 不用说先新建一个MFC类叫CCustomStatic类并继承于CSt
热门专题
Google Play商店 SDK
python 元组为什么不可以被修改
python现有商品列表如下
linux springboot 绝对路径
Hadoop3历史任务与日志聚合
shader只返回从0到1的函数
windows上vue2.0放在nginx访问不到后端
unity 合并多张纹理
推特怎么找好看的视频资源
wpf 3d 球算法问题
自定义flink函数
js 传递blob到c#
怎么查看jvm默认的垃圾回收器
SAP销售订单项目增加画面
mongodb app后台数据库
idea远程debug遇到docker端口号
容器 npm_config_
spark在公司如何提交脚本
读取stm32f429id
delphi 视频流