Qt5.14.2使用虛擬鍵盤
說明
這是關於Qt5(Qt5.1.4.2),QWidget程式設計使用Qt虛擬鍵盤(qtvirtualkeyboard)
Tag: QT5,Qt,軟體盤、虛擬鍵盤,Widget程式,QML
關鍵程式碼
啟用虛擬鍵盤模組
在QApplication物件建立之前插入程式碼:
qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));
有這句話之後,QtCreator中執行程式即可有如下效果:(但存在鍵盤擋住輸入框的問題,後面會解決)。
處理檢視推拉
對於Qwidget程式,使用qtvirtualkeyboard彈出鍵盤之後,鍵盤會浮於表面。
使用VirtualkeyboardPushView模組,自動根據情況把輸入檢視往上面推移,關鍵程式碼如下:
#include "mainwindow.h" #include <QApplication> #include "VirtualkeyboardPushView.h" int main(int argc, char *argv[]) { /// 第一步 qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard")); QApplication a(argc, argv); /// 第二步 VirtualkeyboardPushView keyboardHelper; keyboardHelper.makeCompilerHappy(); MainWindow w; w.show(); return a.exec(); }
執行效果如下(對於新視窗也只會推動新的視窗):
獨立執行
為了讓程式獨立執行,拷貝QT的庫到執行目錄,需要的庫如下(Qt5.14.2 + vs2017 x86):
「其他文章」
- 記一次批量更新整型型別的列 → 探究 UPDATE 的使用細節
- 編碼中的Adapter,不僅是一種設計模式,更是一種架構理念與解決方案
- 執行緒池底層原理詳解與原始碼分析
- 30分鐘掌握 Webpack
- 線性迴歸大結局(嶺(Ridge)、 Lasso迴歸原理、公式推導),你想要的這裡都有
- Django 之路由層
- 【前端必會】webpack loader 到底是什麼
- day42-反射01
- 中心化決議管理——雲端分析
- HashMap底層原理及jdk1.8原始碼解讀
- 詳解JS中 call 方法的實現
- 列印 Logger 日誌時,需不需要再封裝一下工具類?
- 初識設計模式 - 代理模式
- 設計模式---享元模式
- 密碼學奇妙之旅、01 CFB密文反饋模式、AES標準、Golang程式碼
- [ML從入門到入門] 支援向量機:從SVM的推導過程到SMO的收斂性討論
- 從應用訪問Pod元資料-DownwardApi的應用
- Springboot之 Mybatis 多資料來源實現
- Java 泛型程式設計
- CAS核心思想、底層實現