轉自:https://jingyan.baidu.com/article/8275fc8645343646a03cf6c2.html
對於Qt輸入中文的問題一直為人所詬病。
默認Qt攜帶了IBUS的插件,所以一般情況下使用ibus的輸入法那是沒什么問題的。
但是使用fcitx就麻煩了,Qt不支持fcitx的中文輸入。
一般情況下我們需要安裝fcitx 的qt支持庫文件,再復制進Qt程序文件夾就好了
方法/步驟
-
在終端輸入命令:
sudo apt-get install fcitx-frontend-qt5
這個是fcitx的qt5支持庫文件
不過僅僅是安裝這個還是不夠的
-
我們進入這個路徑
/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts
然后會發現有個libfcitxplatforminputcontextplugin.so文件。
這個是Qt輸入中文的關鍵性文件
-
將上面的那個文件
復制到如下的文件夾:
/home/deepin/software/Qt5.10.0/5.10.0/gcc_64/plugins/platforminputcontexts
/home/deepin/software/Qt5.10.0/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts
注意,你的可能和我的不太一樣,重點是Qt的安裝目錄
后面應該是一樣的
第一個這個是實現編譯后的程序輸入中文
第二個是實現Qt界面輸入中文注釋
-
復制進入后給予這個文件以可執行權限
這個一般鼠標右鍵就可以搞定了
如果你的Linux 版本沒有這個功能可以使用命令
chmod +x 文件名
這個命令
-
做完以上的步驟基本上就已經完成了。
重啟Qt軟件,理論上Qt是可以實現輸入中文注釋和編譯后輸入中文了。
我們隨便寫個程序試試看。
下面是是Qt界面輸入中文注釋的截圖。
-
以下是Qt編譯后程序輸入中文的截圖。
如果這兩個都沒啥問題,那就差不多了。
值得注意的是:
如果你復制了那個文件到指定的文件夾,並賦予了可執行權限,但是始終無法輸入中文。
那么你可能安裝的高版本的Qt,fcitx的Qt支持庫失效了。你需要去fcitx的github下載源碼自己編譯出so文件
END