在Ubuntu環境下用了兩天Qt,今天突然發現在Qt 5的代碼編輯器里面居然無法輸入中文!生成的輸入框也同樣無法輸入中文!
在其他軟件里面把中文復制過去,調試也沒發現有任何顯示問題,搜索了一下,原來是輸入法框架的問題。再看一下解決辦法,各種各樣:裝軟件、復制中文支持文件、寫腳本、改系統配置,甚至還有重新編譯一個程序來實現的,真是八仙過海,各顯牛逼。
軟件出現漏洞很正常,但是這么有名的產品,我是堅決不相信還需要我們去編譯網上的源程序才能解決問題的。很多人說的解決方法都是安裝fcitx-frontend-qt5來支持在Qt中輸入中文(因為要用搜狗拼音啊,當然是fcitx了)。試過,仍然無解,后面突然想起好像自己的Ubuntu系統好像沒有完整的中文語言包,裝好語言包之后,竟然好了。。。
總結一下解決過程,非常簡單:
(1)安裝fcitx-frontend-qt5,命令行里輸入sudo apt-get install fcitx-frontend-qt5
(2)進入系統設置的語言支持(Language Support),檢查中文包安裝情況,無則裝之。
(3)裝完之后記得點“Apply System-Wide”來應用到系統全局,然后還有輸入系統要改成“fcitx”。
(4)關機重啟
重啟后再打開Qt一般就可以使用搜狗輸入法了,這里要注意的是我們常用的輸入法切換快捷鍵 【Ctrl+空格】 很有可能跟軟件的快捷鍵沖突了,請使用【Ctrl+,】或者改了。
假如還是不行,可以試着將安裝后的fcitx-frontend-qt5復制到qt安裝目。
通常,fcitx-frontend-qt5在下面的目錄路徑中(可用命令dpkg -L fcitx 看文件安裝路徑):
/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so
將該文件復制到QtCreator安裝目錄下://Tools/QtCreator/bin/plugins/platforminputcontexts
還有qt5安裝目錄:/5.3/gcc_64/plugins/platforminputcontexts
PS:其實很多qt編寫的程序無法輸入中文,將fcitx-frontend-qt5復制到該程序相應的目錄下,就可以正常了,如wps和linux 下的代碼閱讀軟件 understand,用這種方法可以解決輸入法無法輸入中文的問題。