在InitDialog中设置焦点不起作用 SETFOCUS

参考以下帖子,

解决

 

http://topic.csdn.net/t/20030515/09/1785909.html

 

在WM_SHOWWINDOW中试试
void   CTestdlg3Dlg::OnShowWindow(BOOL   bShow,   UINT   nStatus)  
{
CDialog::OnShowWindow(bShow,   nStatus);

CEdit*   pedit=(CEdit*)GetDlgItem(IDC_EDIT);
pedit-> SetFocus();
}

 

 

 

在InitDialog中要设置某个控件的焦点,必须返回FALSE
BOOL   CODBCLiborDlg::OnInitDialog()
{
          CDialog::OnInitDialog();
          //……
         
          CButton*   pButton   =   static_cast <CButton*> (GetDlgItem(IDC_BTN));
          ASSERT(pButton   !=   NULL);
          pButton-> SetFocus();

          return   FALSE;    
}

 

 

我用的第二种方法

因为在第二种方法,有如下提示:

 

BOOL CDialogLogin::OnInitDialog()
{
 CDialog::OnInitDialog();
 
 // TODO: Add extra initialization here

 return TRUE;  // return TRUE unless you set the focus to a control
               // EXCEPTION: OCX Property Pages should return FALSE
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值