CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

如何获得一个运行程序窗口标题栏上的文字?

楼主wym612()2003-08-04 13:58:52 在 VC/MFC / 基础类 提问

如何获得一个运行程序窗口标题栏上的文字? 问题点数:0、回复次数:13Top

1 楼papaya_stone(^_^)shentong(^_^)回复于 2003-08-04 14:07:15 得分 0

先FindWindow()找到窗口的HWND,在GetWindowText();Top

2 楼baodi_z(冷冷的太阳)回复于 2003-08-04 14:12:31 得分 0

楼上正解Top

3 楼nonocast(如果没有如果)回复于 2003-08-04 15:31:00 得分 0

GetWindowText()Top

4 楼wym612()回复于 2003-08-07 11:54:44 得分 0

可看不出窗口的文字是什么呀?怎么办?Top

5 楼thekin()回复于 2003-08-17 11:02:12 得分 0

AfxGetMainWnd()->GetWindowText();Top

6 楼xiaofei7569(夏雁)回复于 2003-08-18 19:52:47 得分 0

同意二楼的.Top

7 楼GFK(金鱼王)回复于 2003-08-18 20:06:14 得分 0

获得一个运行程序窗口标题栏上的文字,有什么用!Top

8 楼laodie(张三)回复于 2003-08-18 20:08:02 得分 0

那就仔细看一下FindWindow(),GetWindowText()的函数说明吧:  
   
  函数功能:该函数获得一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数不查找子窗口。在查找时不区分大小写。  
   
          函数型:HWND   FindWindow(LPCTSTR   IpClassName,LPCTSTR   IpWindowName);  
   
          参数:  
   
          IpClassName   :指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobafAddAtom函数产生的全局成员。该成员为16位,必须位于IpClassName的低   16位,高位必须为   0。  
   
          IpWindowName:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为空,则为所有窗口全匹配。  
   
          返回值:如果函数成功,返回值为具有指定类名和窗口名的窗口句柄;如果函数失败,返回值为NULL。  
   
          若想获得更多错误信息,请调用GetLastError函数。  
   
          备注:Windows   CE:若类名是一个成员,它必须是从   RegisterClass返回的成员。  
   
          速查:Windows   NT:3.1以上版本;Windows:95以上版本;Windows   CE:1.0以上版本;头文件:Winuser.h;库文件:user32.lib;   Unicode:在   Windows   NT上实现为   Unicode和   ANSI两种版本。  
   
  ----------------------------------------------------------  
  GetWindowText()  
  函数功能:该函数将指定窗口的标题条文本(如果存在)拷贝到一个缓存区内。如果指定的窗口是一个控制,则拷贝控制的文本。但是,GetWindowTeXt不能接收在其他应用程序中的控制文本。  
   
          函数原型:Int   GetWindowText(HWND   hWnd,LPTSTR   lpString,Int   nMaxCount);  
   
          参数:  
   
          hWnd:带文本的窗口或控制的句柄。  
   
          IpString:指向接收文本的缓冲区的指针。  
   
          nMaxCount:指定要保存在缓冲区内的字符的最大个数,其中包含NULL字符。如果文本超过界限,它就被截断。  
   
          返回值:如果函数成功,返回值是拷贝的字符串的字符个数,不包括中断的空字符;如果窗口无标题栏或文本,或标题栏为空,或窗口或控制的句柄无效,则返回值为零。若想获得更多错误信息,请调用GetLastError函数。  
   
          函数不能返回在其他应用程序中的编辑控制的文本。  
   
          备注:如果目标窗口属于当前进程,GetWindowText函数给指定的窗口或控制发送WM_GETTEXT消息。如果目标窗口属于其他进程,并且有一个窗口标题,则GetWindowTeXt返回窗口的标题文本,如果窗口无标题,则函数返回空字符串。  
   
          速查:Windows   NT:3.1以上版本;Windows:95以上版本:Windows   CE:1.0以上版本;头文件:Winuser.h;库文件:user32.lib:Unicode:在Windows   NT上实现为Unicode和ANSI两种版本。  
   
  Top

9 楼sad_4978(回忆之前,忘记之后)回复于 2003-08-19 06:43:56 得分 0

GetWindowText()!Top

10 楼flinming(flinming)回复于 2003-08-19 09:26:19 得分 0

GetWindowText();  
  Top

11 楼zhucde(【風間苍月】★<==>★【虚拟闲人】)回复于 2003-08-19 09:33:47 得分 0

如果你正在运行一个记事本,  
  你可以:  
  CString   str;  
  CWnd   *pwnd=FindWindow("notepad",NULL);  
  pwnd->GetWindowText(str),  
  那么此时这个记事本的标题文字就存在了str中,  
  你可以用很多方法显示此字符串Top

12 楼lifeequation(果皮)回复于 2003-08-19 10:46:09 得分 0

同意ing,,,,,Top

13 楼bborn(生命在于折腾)回复于 2003-08-19 11:31:21 得分 0

没有标题栏的文字   如何用FindWindow   ?  
  Top

相关问题

  • 程序的状态栏和标题栏的文字怎么变
  • 在程序运行时,怎样改变标题栏最左边的图标?
  • 如何程序运行时把菜单和标题栏给去掉
  • 怎样在对话框程序运行时让用户来选择标题栏的显现和消失?
  • 为何我在程序运行时将MyForm.BorderStyle设为0后,MyForm的标题栏还在?
  • 程序运行时窗口的标题栏中的“无标题”字样怎样可以去掉?
  • SDI程序,视图是基于CFormView的,运行时标题栏显示无标题,怎么才能去掉呀
  • 怎么更改单文档SDI应用程序的标题栏上的文字标题?
  • 100分!如何用VC程序改掉一个可执行文件的标题栏的文字?
  • 如何更改程序的标题栏?

关键词

  • 函数
  • 文本
  • 文字
  • 版本
  • 字符
  • 控制
  • 拷贝
  • 文件
  • unicode
  • nt

得分解答快速导航

  • 帖主:wym612

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo