1.如何得到无标题对话框的句柄?
  View从FormView继承,其中有一个Edit(ID_EDIT_1)和一个Button(IDC_BUTTON_A)控件,单击菜单项X弹出对话框DD,其中有一个Edit(ID_EDIT_1)和一个Button(IDC_BUTTON_A)控件,如何得到该对话框的句柄?2.如何在别的程序中增加一个菜单项,比如在记事本的第二个菜单中加一项“捣乱”,单击该项可以显示一个消息MessageBox("heihei");如何在另外的程序中插入一个工具条?3.如何删除一个注册表项,结果是该项好像从来没有被设置过?
  比如在注册表的Run项中有许多随系统启动的程序,比如有c:\ACDSee.exe,由于某种原因,要取消它启动,直接将该项用“”删除会出现两个空字符串项,如何将它彻底删除,不出现两个空字符项?

解决方案 »

  1.   

    1. CWnd *wnd = GetDlgItem(IDC_BUTTON_A) ;
      

  2.   

    1
    什么叫无标题对话框?

    HWND hnotepat=::FindWindow(NULL,"未定标题 - 记事本");
    HMENU menu=::GetMenu(hnotepat);
    HMENU submenu=::GetSubMenu(menu,1);
    InsertMenu(submenu,1,MF_BYPOSITION,IDR_NEWITEM,"捣乱");3
    LONG RegDeleteKey(
      HKEY hKey,         // handle to open key
      LPCTSTR lpSubKey   // address of name of subkey to delete
    );
      

  3.   

    第一个问题你的意思是说如果弹出这个对话框吧?
    CYourDialog yourdlg;
    yourdlg.DoModal();弹出以后得到它的句柄:
    HWND yourhwnd=yourdlg.GetSafeHWnd();
      

  4.   

    http://expert.csdn.net/Expert/topic/2872/2872577.xml?temp=.6008875第二个问题可以讨论一下.
      

  5.   

    View从FormView继承,其中有一个Edit(ID_EDIT_1)和一个Button(IDC_BUTTON_A)控件,单击菜单项X弹出对话框无标题对话框DD,其中有一个Edit(ID_EDIT_1)和一个Button(IDC_BUTTON_A)控件,如何得到该对话框DD的句柄
      

  6.   

    bhut(bhut):GetSafeHWnd();不是CYourDialog类的成员,编译不过的!!!!1
      

  7.   


    要使菜单项点击后出现MessageBox,需要对其增加消息处理函数
    ///////in.cpp
    BEGIN_MESSAGE_MAP(CDirCtrlDlg, CDialog)
    //{{AFX_MSG_MAP(CDirCtrlDlg)
    //..其他消息映射
    ON_COMMAND(ID_MY_MENUITEM, OnMyFunction)//添加这句
    //}}AFX_MSG_MAP
    END_MESSAGE_MAP()//以及这个函数
    void CXXXX::OnMyFunction()
    {
    MessageBox("heihei");
    }/////in .h
    //{{AFX_MSG(CDirCtrlDlg)
             //...其他函数的声明
    afx_msg void OnMyFunction();//添加这句
    //}}AFX_MSG
    DECLARE_MESSAGE_MAP()
      

  8.   

    楼上的,他这个菜单是增加在“记事本”里面的,除非用hook监视“记事本”,否则没法响应to str345(蛤蚧) 
    只要你的对话框DD是从dialog类继承的就可以用GetSafeHWnd();因为他是CWnd的成员函数
    而CDialog继承自CWnd
      

  9.   

    你不会直接把HWND yourhwnd=yourdlg.GetSafeHWnd();
    拿去编译了吧?我倒