码迷,mamicode.com
首页 > 其他好文 > 详细

setFocus一定要写在setLayout设置的后面,否则不起作用——使用setFocusPolicy为控件设置不同的焦点策略:Tab焦点,Click焦点,Wheel焦点和没有焦点

时间:2015-12-10 21:34:22      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:

    QLineEdit* pEditor = new QLineEdit(m_strText);
    pEditor->resize(.......);
    pEditor->move(........);
    scene()->addWidget(pEditor);
    pEditor->setFocus();
注意红色字体的俩个语句的顺序。若反序,就会出现【QLineEdit怎样实现获得焦点时即可输入】的问题,因为Focus了之后马上又Out 了,导致不可输入。

其实也很好理解:一定要放在setLayout的后面,否则还没有真正显示,又怎么能设置焦点呢?

-----------------------------------------------------------

另外还有:

this->activateWindow();
pass1_edit->setFocusPolicy(Qt::StrongFocus);

在需要的时候,也要设置

setFocus一定要写在setLayout设置的后面,否则不起作用——使用setFocusPolicy为控件设置不同的焦点策略:Tab焦点,Click焦点,Wheel焦点和没有焦点

标签:

原文地址:http://www.cnblogs.com/findumars/p/5036994.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!