Pyqt5 调用软键盘
安装Python3.7 和Pyqt 5.15.1, 代码加os.environ[“QT_IM_MODULE”] = “qtvirtualkeyboard” 还是不够的!
解决方法:参考 链接
首先无需安装Qt5.15
(1)Python安装aqtinstall库,命令行:python -m pip install aqtinstall, 当然也可以下载轮子文件,但要安装其依赖库。
(2)查看Pyqt 版本,方法一:Pycharm->file->settings->Project Interpreter, 找到qt5-applications->version我的是5.15.1.1, 方法二:如下输出第一行为后面要用粘贴的目标文件夹,第二行为版本号。

from PyQt5.QtCore import QT_VERSION_STR, QLibraryInfo
print(QLibraryInfo.location(QLibraryInfo.PrefixPath))
print('version', QT_VERSION_STR)

输出:

C:/Users/XXXX/AppData/Local/Programs/Python/Python37/lib/site-packages/PyQt5/Qt
version 5.15.1

(3)命令行:python -m aqt install 5.15.1(此处为Pyqt5版本号) windows desktop win64_msvc2019_64 -m qtvirtualkeyboard --outputdir qt
我的是Win10 64位,apt使用见 链接,等个三五分钟(视网速而定),如下:
在命令行的文件夹下(我的是C:\Users\XXXXX>)找到生成的qt文件夹。
(4)1复制"qt/5.15.0/msvc2019_64/bin/Qt5VirtualKeyboard.dll" 文件粘贴到(2)中的“目标文件夹/bin”内。
2在“目标文件夹/plugins”下新建platforminputcontexts文件夹。
3复制“qt/5.15.1/msvc2019_64/plugins/platforminputcontexts/qtvirtualkeyboardplugin.dll” 文件到上一步新建的 “目标文件夹/plugins/platforminputcontexts” 文件夹内。
4 复制"qt/5.15.1/msvc2019_64/plugins/virtualkeyboard" 文件夹到 “目标文件夹/plugins” 文件夹内。
5复制"qt/5.15.1/msvc2019_64/qml/QtQuick/VirtualKeyboard" 文件夹到 “目标文件夹/qml/QtQuick” 文件夹内。
(5)测试代码:

import os
import sys
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWidgets import QLineEdit
from PyQt5.QtWidgets import QMainWindow
from PyQt5.QtWidgets import QVBoxLayout
from PyQt5.QtWidgets import QWidget
os.environ["QT_IM_MODULE"] = "qtvirtualkeyboard"
class MainWindow(QMainWindow):def __init__(self):super(MainWindow, self).__init__()self.line_edit = Noneself.init_ui()def init_ui(self):self.line_edit = QLineEdit()self.line_edit2 = QLineEdit()self.layout = QVBoxLayout()self.main_widget = QWidget()self.main_widget.setLayout(self.layout)self.layout.addWidget(self.line_edit)self.layout.addWidget(self.line_edit2)self.setCentralWidget(self.main_widget)if __name__ == "__main__":app = QApplication(sys.argv)mw = MainWindow()mw.show()sys.exit(app.exec_())

效果如下:

另外,如果QLabel设置inputMethodHints,比如"ImhDigitsOnly"勾上则会只弹出数字软键盘。

最后,如果QDialog 窗口设置模态,windowModality 设置为WindowModal, 不要设置为ApplicationModal否则软键盘虽然弹出来仍然使用不了。

欢迎留言讨论,Q562604218。

完美解决Pyqt5 调用软键盘适用于触摸屏相关推荐

  1. 移动端h5唤起键盘_移动端H5界面打开后,如何自动调用软键盘

    test(){ // let aa = this.$refs.input1.blur(); // this.$nextTick((x)=>{ //正确写法 // // this.$refs.in ...

  2. Unity3d C# 实现UGUI 输入框调用软键盘输入的完整功能(含工程源码,适用触屏一体机等)

    前言 如题的需求经常会在甲方的需求中出现,比如一体机上,大多客户会不选择键盘和鼠标,因为觉得比较low的可能.自己弄一个内置UI键盘的话也是可行的,只不过可能就英文输入好实现,实现带中文的输入可能就比 ...

  3. android 键盘退回 慢,调用软键盘的速度很慢。。。

    安卓机器上测试,每一次打开软件 ,第一次触发调用软键盘,要延迟2-3秒才会出来,,, 然后再点的时候,就速度很快了,,这是什么原因?? 代码如下: var openSoftKeyboard = fun ...

  4. wincc调用软键盘的几种方法

    wincc调用软键盘 软件设置 VB脚本 调用windows系统软键盘 调用wincc自带软键盘 C脚本 调用windows系统软键盘 调用wincc自带软键盘 软件设置 打开"计算机属性& ...

  5. Qt5 QLineEdit实现点击调用软键盘

    Qt版本: Qt 5.9.3 (MSVC 2015, 32 bit) 我们知道,QLineEdit 是没有Clicked信号的,那么怎么实现点击它调用软件盘呢? 麻烦点的有重写 LineEdit 的 ...

  6. 打开、关闭系统软键盘(触摸屏)

    开启.关闭系统软键盘 调用头文件 #include <Windows.h> #pragma comment(lib, "user32.lib") void OpenSy ...

  7. 调用软键盘_Android 支持拖动、缩放的自定义软键盘

    点击上方"Android技术杂货铺",选择"标星" 干货文章,第一时间送达! 开篇 本次给大家分享的是支持拖动.缩放的自定义原生软键盘.不同于市面上的自定义软件 ...

  8. 完美解决:调用sklearn出现诸如ImportError: cannot import name ‘LogisticR‘ from ‘sklearn.linear_model‘ (D:\Progr

    1.问题:调用sklearn出现诸如 ImportError: cannot import name 'LogisticR' from 'sklearn.linear_model' (D:\Progr ...

  9. 解决登陆界面软键盘弹出遮住登陆按钮

    android:windowSoftInputMode属性一共同拥有9个取值.各自是: stateUnspecified: 当设置属性为stateUnspecified的时候,系统是默认不弹出软键盘的 ...

  10. Window调用软键盘方法

    1 调用运行界面 win + r 快捷键也行 2 输入osk,回车 3 华丽丽的软键盘 因为笔记本的B和Q键坏了,所以只能出此下次,记得固定在Window底下的任务栏中,方便随时显示

最新文章

  1. 支付宝支付框js代码
  2. 启明云端分享| 彩屏化的86控制面板(简称86盒)怎么选型硬件和对比
  3. 关闭钩子(ShutdownHook)
  4. Visual studio 打包
  5. pytorch 加载模型_福利,PyTorch中文版官方教程来啦(附下载)
  6. DataGridview动态添加列
  7. 如何用python读取表_Python读取MySQL表数据的方法介绍
  8. 阅读《经济学人》,学会这样查词典,从此英语学习不求人
  9. 最适合使用外汇跟单软件的人
  10. 广东将5G基站专项规划纳入各地国土空间规划
  11. 嵌入式芯片调试神器-J-Link RTT详解
  12. 看我是怎样捣鼓Linux的
  13. JEECG3.8 全套实战视频全部开放,免费下载!
  14. Web3 | DID赛道之 Galxe(原 Project Galaxy)
  15. 生活中软件易用性的例子_多用“举出例子”“比如说”,来进行生活中的语言交流...
  16. 图形化编程语言的设计
  17. 在CMD中登陆MySQL
  18. 【Linux基本操作】Day1
  19. 恢复服务器的文件,云服务器怎么恢复文件
  20. 数字经济专家高泽龙谈“金融元宇宙”与“元宇宙金融”

热门文章

  1. CF Stressful training优先队列加二分搜答案
  2. MySQL原理与实践(四):由数据库事务引出数据库隔离级别
  3. 国土防线2计算机内存不足,国土防线2革命配置要求高吗?PC配置要求介绍
  4. 懒惰删除JAVA,Redis的新特性懒惰删除Lazy Free详解
  5. HHKB连不上Ubuntu
  6. Labview各版本软件下载链接
  7. ADIS16465 加速度和陀螺仪数据融合及调试(kalman滤波)
  8. Mac 快速查找快捷键command+f失效解决办法
  9. python123货币转换器_python货币转换
  10. 原来连续查询mysql天数的sql语句这么简单呀