热情软件屋

 

如何获得控件的句柄


编号:QA001590
建立日期: 1999年8月25日 最后修改日期:2003年11月7日
所属类别:

limin:
    vc50
    win95
    如何获得控件的句柄?上次我曾向您问起如何在程序运行时动态地改变控件的位置(QA001518 "怎样在程序运行时改变控件的位置"),回答是使用SETWINDOWPOS函数,但该函数的第一个参数就是控件的句柄,不知如何获得?
    

回答:

    所有控件(包括CButton等)都是CWnd的子类,而SetWindowsPos是CWnd的成员函数。所以你可以利用ClassWizard建立一个成员变量与控件相关联,然后直接调用这个成员变量的SetWindowsPos函数就可以了。
    或者利用对话框的GetDlgItem获得控件所对应的CWnd类的指针。
    绝大多数与句柄有关的API函数都被MFC封装了,所以在绝大多数情况下,你不需要句柄。如果确实需要句柄,可以使用CWnd类的m_hWnd变量或调用CWnd::GetSafeHwnd函数。

此问题由李海回答。

附加关键字:编程, 源程序, programming, source code, C/C++, MFC, C++ Builder, Borland C++, Turbo C, C, BCB, 窗体与菜单, form, window, tform, 标准控件, screen, button, combo, checkbox, listbox

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio