当前位置:首页 » 多媒体相关

我的对话框出来后,一按回车就关掉了,如何让它不要这样?


我的对话框出来后,一按回车就关掉了,如何让它不要这样?

推荐阅读

  • Windows XP系统重装的经验和技巧 [详细内容]
  • 用小6一个月后的感受 [详细内容]
  • 简单就好 八款廉价大牌MP3选购推荐魅族meizu E3 512M选购指南 [详细内容]
  • 海尔联手精成电子追加2千万美元投IT即时新闻 [详细内容]
  • UC小经验+热辣小技巧 [详细内容]
  • 实惠的时尚 海尔MAF-E20售价仅199闪存MP3 [详细内容]
  • 采用诺基亚手机电池 测海尔MAF-I98海尔 Haier MAF-I98 512M彩屏MP3 [详细内容]
  • 网友回答:
    网友:akiko

    bool   cxxxdlg::pretranslatemessage(msg*   pmsg)    
      {  
              if(pmsg   ->   message   ==   wm_keydown)  
              {  
                      if(pmsg   ->   wparam   ==   vk_return)  
      return   true;  
              }  
              return   cdialog::pretranslatemessage(pmsg);  
      }    
     

    网友:c8051

    涓轰簡浣縀nter閿棤鏁堬紝鏈绠鍗曠殑鍔炴硶灏辨槸灏咰exdlg鐨凮nok鍑芥暟鍐欐垚绌哄嚱鏁帮紝鐒跺悗閽堝ok鎸夐挳鍐欎竴涓柊鐨勫嚱鏁版潵鍝嶅簲銆備笅闈㈡槸鍏蜂綋姝ラ锛?  
              棣栧厛寤虹珛涓涓互ex涓哄悕鐨勫熀浜庡璇濇鐨勭▼搴忋?  
              1.鐢–lasswizard鏄犲皠idok鎸夐挳鍒癘nok铏氬嚱鏁般?  
              鍦–lasswizard涓紝浠嶤exdlg鐨凮bject   ids鍒楄〃涓夋嫨idok锛岀劧鍚庡崟鍑籅n_clicked锛岃繖鏍峰嵆浜х敓浜哋nok鍑芥暟鐨勫師褰㈠拰妗嗘灦銆?  
              2.鍒╃敤瀵硅瘽妗嗙紪杈戝櫒鏀瑰彉ok鎸夐挳鐨処d銆?  
              閫夋嫨ok鎸夐挳锛屽皢瀹冪殑id鐢盜dok鏀逛负idc_ok锛屽苟鍘绘帀default   button灞炴х殑澶嶉夋爣璁般傝繖鏍稯nok鍑芥暟鍗宠鍒嗙鍑烘潵銆?  
              3.鐢–lasswizard鍒涘缓涓涓狾nclickedok鎴愬憳鍑芥暟銆?  
              鍦–lasswizard涓紝浠嶤exdlg鐨凮bject   ids鍒楄〃涓夋嫨idc_ok锛岀劧鍚庡崟鍑籅n_clicked锛屽嚱鏁板悕鐢∣nclickedok锛屼骇鐢熶簡onclickedok鍑芥暟鐨勫師褰㈠拰妗嗘灦銆?  
              4.缂栬緫浠g爜銆?  
              void   cexdlg::onok()  
              {  
                      //   todo:   add   extra   validation   here  
                      //   cdialog::onok();  
              }  
       
              void   cexdlg::onclickedok()  
              {  
                      //   todo:   add   your   control   notification   handler   code   here  
                      cdialog::onok();  
              }  
     

    网友:xper

    重载pretranslatemessage

    网友:kulukyo

    重载pretranslatemessage,  
      判断wparam,如果是回车键,则执行相应的函数

    网友:qiqiqiqi1

    void   onok()  
              {  
                      //   todo:   add   extra   validation   here  
                      //   cdialog::onok();  
              }  
      就是把onok涵数里代码都去掉就行拉  
     

    网友:heavenchang

    例如:  
      有一个俩个button  
      一个是“发送”,一个是“退出”  
      在发送上         属性/styles\默认按钮       选中!  
      按enter它就不退出了!  
      不知道是不是!

    网友:yjh8047

    重新选择默认按钮,  
      或者默认按钮的id不要用idok或idcancel,  
      再或者  
      如果默认按钮是idok,加入响应onok()函数,并且在该函数里不调用cdialog::onok()  
      如果默认按钮是idcancel,加入响应oncanel()函数,并且在该函数里不调用cdialog::oncanel()  
     

    网友:healer

    bool   cmydlg::pretranslatemessage(msg*   pmsg)    
      {  
              if(pmsg   ->   message   ==   wm_keydown)  
              {  
                      if(pmsg->wparam   ==   vk_return)  
      return   true;  
              }  
              return   cdialog::pretranslatemessage(pmsg);  
      }    
      还有那几个默认的按钮,   讨厌死了.  
     

    网友:cnwww

    我见过的一种方法。  
      bool   cmydlg::pretranslatemessage(msg*   pmsg)    
      {  
      //   todo:   add   your   specialized   code   here   and/or   call   the   base   class  
      //   屏蔽回车键  
      char   keyname[50];  
      zeromemory(keyname,50);  
      if(pmsg->message   ==   wm_keydown)  
      {  
      getkeynametext(pmsg->lparam,keyname,50);  
      cstring   str=keyname;  
      if(str=="enter"   ||   str=="num   enter")  
      {  
      return   false;  
      //   or   call   function   you   want   do.  
      }  
      }  
      return   cdialog::pretranslatemessage(pmsg);  
      }  
     

    .

    讨论区

    Login