setFocus不能生效的問題

2021-06-22 09:33:25 字數 666 閱讀 1175

focusinevent只有在物件顯示出來的情況下設定setfocus才可以觸發。這一點help手冊裡有說明:

轉一篇文章如下:

focus問題曾經困擾了我一些時間。過程中也朋到了很多麻煩。現在總結一下,希望能夠解決所有關於focus方面的問題。

即使setfocus了也不一定有效果。  幫助文件中說的很清楚,你不能在你的部件還不可見的時候setfocus,這樣不行。解決這個問題的辦法就是把setfocus()的操作放到我們這個部件的showevent()裡面去做。而我們一般可能喜歡放到建構函式最後去setfocus,這樣往往是沒有效果的,問題就在這。  

另外,我們可能喜歡對乙個widget或其派生的部件做setfocus,這也往往是沒有效果的。因為乙個widget即使獲取了焦點,如果沒有後續的處理,你是看不到的。也不會因為你的widget有了焦點,就自動的讓裡面的某個子部件,比如按鈕有了焦點。 所以,我們在使用setfocus的時候,一般不要widget->setfocus(),而是button->setfocus()或者label->setfocus()。

所以,常見的會是這種形式: 

void loginform::showevent(qshowevent *)

linux環境變數不能生效問題

在 etc profile中新增環境變數時,遇到了一點問題,在此記錄。以下下操作大概復現了所出的問題。1.普通使用者登入系統,切換到root,在 etc profile中新增環境變數myenv abc 2.直接列印環境變數,echo myenv,輸出為空 3.執行 source etc profil...

DynamicInsert註解不能生效的問題

使用hibernate框架,在實體類上新增 dynamicinsert和 dynamicupdate註解以後,會在更新表資料的時候,可以控制更新語句,不插入空欄位。但是新增以後卻發現不能生效,經過排查,發現問題如下 1 需要新增 selectbeforeupdate true 因為 dynamici...

qss 樣式不生效 注釋不能巢狀

qss 相容 css 調qt樣式的時候出現乙個很奇怪的問題 刪掉注釋掉的內容 樣式正常,不刪注釋 注釋後面的樣式全部失效。有點困惑的是 感覺很困惑,後來發現裡面有行中文注釋,刪掉中文注釋就行了,以為是由於編碼失敗的問題。以為編碼轉換時引起的一些問題,但是 開啟注釋還能正常顯示樣式。本來一直以為qss...