網站首頁 編程語言 正文
說明
這是關于Qt5(Qt5.1.4.2),QWidget編程使用Qt虛擬鍵盤(qtvirtualkeyboard)
Tag: QT5,Qt,軟件盤、虛擬鍵盤,Widget程序,QML
?作者:474609810@qq.com
關鍵代碼
啟用虛擬鍵盤模塊
在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):
原文鏈接:https://www.cnblogs.com/lees-engineer/p/16667341.html
相關推薦
- 2022-07-24 .Net結構型設計模式之裝飾模式(Decorator)_基礎應用
- 2023-07-14 css 實現塊標簽上下左右居中
- 2023-10-15 字符串逆序輸出,編譯器優化,循環代碼外提,無效代碼刪除
- 2022-04-03 Pandas搭配lambda組合使用詳解_python
- 2022-06-12 淺談Android?Dialog窗口機制_Android
- 2022-09-17 C/C++?控制臺等待指令解析_C 語言
- 2022-10-02 Android實現倒計時的方案梳理_Android
- 2022-10-13 解析批處理命令call和start_DOS/BAT
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支