setFocus不能生效的问题
生活随笔
收集整理的這篇文章主要介紹了
setFocus不能生效的问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
focusInEvent只有在對(duì)象顯示出來的情況下設(shè)定setFocus才可以觸發(fā)。這一點(diǎn)help手冊里有說明:
?
轉(zhuǎn)一篇文章如下:http://blog.csdn.net/alex201030273437/article/details/8193757
focus問題曾經(jīng)困擾了我一些時(shí)間。過程中也朋到了很多麻煩。現(xiàn)在總結(jié)一下,希望能夠解決所有關(guān)于focus方面的問題。
????即使setFocus了也不一定有效果。??幫助文檔中說的很清楚,你不能在你的部件還不可見的時(shí)候setFocus,這樣不行。解決這個(gè)問題的辦法就是把setFocus()的操作放到我們這個(gè)部件的showEvent()里面去做。而我們一般可能喜歡放到構(gòu)造函數(shù)最后去setFocus,這樣往往是沒有效果的,問題就在這。??
????另外,我們可能喜歡對(duì)一個(gè)widget或其派生的部件做setFocus,這也往往是沒有效果的。因?yàn)橐粋€(gè)widget即使獲取了焦點(diǎn),如果沒有后續(xù)的處理,你是看不到的。也不會(huì)因?yàn)槟愕膚idget有了焦點(diǎn),就自動(dòng)的讓里面的某個(gè)子部件,比如按鈕有了焦點(diǎn)。 所以,我們在使用setFocus的時(shí)候,一般不要widget->setFocus(),而是button->setFocus()或者label->setFocus()。
????所以,常見的會(huì)是這種形式:?
void LoginForm::showEvent(QShowEvent *)
{
????ui->loginButton->setFocus();
}
FROM: ?http://blog.csdn.net/zzwdkxx/article/details/29380689
總結(jié)
以上是生活随笔為你收集整理的setFocus不能生效的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 光通量发光强度照度亮度关系_单位面积光功
- 下一篇: 二叉树的前序遍历、中序遍历、后序遍历