当前位置:首页
开发技术指南» 文章正文
    引言:

 ·用sql语句怎么得到字段的注解    »显示摘要«
    摘要: 见题,谢谢。 ......
 ·关于datagrid列隐藏问题    »显示摘要«
    摘要: 小弟正在使用c# 开发windows 应用程序 如何隐藏datagrid 中的某一列 ; 请各位大哥,明示! ......


获得MessageBox句柄

(不通过GetWindowText可以吗?)  
 

NO.1   作者: vcmute

FindWindow  
  GetDlgItemText  
  如果不同进程,需要VirtualAllocEx在对方进程中申请一段  
  SendMessage后ReadProcessMemory

NO.2   作者: casinosun

FindWindow  
  之后用SendMessage就行了

NO.3   作者: vcmute

可以自定义属性,通过SetProp设定  
  然后GetProp判断,如果名字重复的话

NO.4   作者: jacky22098

FromHandle()

NO.5   作者: gohappy_1999

GetLastActivePopup  
  The   GetLastActivePopup   function   determines   which   pop-up   window   owned   by   the   specified   window   was   most   recently   active.    
   
  HWND   GetLastActivePopup(  
      HWND   hWnd       //   handle   to   owner   window  
  );  
   
  哪个窗口弹出MessageBox(),哪个就是它的owern

NO.6   作者: y0z0

::GetLastActivePopup好像是不行的,以下是一段测试代码,如果得到LastActivePopup的handle不是对话框本身,则关闭这个窗口。但是从来没有真正执行过。  
   
  void   CTestDlg::OnTimer(UINT   nIDEvent)  
  {  
  //   TODO:   Add   your   message   handler   code   here   and/or   call   default  
  MessageBox("Test");  
  HWND   hWnd=::GetLastActivePopup(this->m_hWnd);//这里设置了断点1,每次WM_TIMER时都会响应  
  if(hWnd!=this->m_hWnd)  
  ::DestroyWindow(hWnd);//这里设置了断点2,但是从来没有经过这里  
   
  CDialog::OnTimer(nIDEvent);  
  }  
   
  继续关注这个话题  
 

NO.7   作者: nelsonc

MessageBox("Test")返回之后窗口已经不存在了吧。还能通过GetLastActivePopup取得吗?  
   
  还有,如果你的CTestDlg不是顶级窗口的话,GetLastActivePopup永远返回自己的hWnd。  
 

NO.8   作者: y0z0

所以说在单线程的情况下使用MessageBox是无法用GetLastActivePopup获得HWND的,但是如果是多窗口的程序,使用GetLastActivePopup是能得到最近活动的窗口HANDLE的


 ·windows ce访问sql server数据库    »显示摘要«
    摘要: 我是刚学习用 vc#.net 开发基于移动设备的程序的,有以下问题(可能幼稚了点,不要见笑): 我有一个手持式终端,其操作系统是 windows ce .net 4.20 版,我要在上开发一个小的应用程序,用它来访问 sql server 数据库(此数据库装在 windows 2000 server 上),请问该如何操作? 引用 using system.data.sqlclient; 和......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE