让 QLineEdit 检测 Tab 键按下事件?

2024-02-23

我在文档中找不到任何内容。我找到了一个使用 PyQt 或其他东西的解决方案,但我宁愿不必使用它。另外,如果有信号就好了,但看起来没有。


1.当您按照 Sam 建议安装事件过滤器时(m_lineEdit->installEventFilter(this);)你需要处理QEvent::KeyPress并检查密钥是否相等Qt::Key_Tab:

bool MainWindow::eventFilter(QObject *obj, QEvent *event)
{
  if (obj == m_lineEdit) {
     if (event->type() == QEvent::KeyPress) {
         QKeyEvent *keyEvent = static_cast<QKeyEvent*>(event);
         if (keyEvent->key() == Qt::Key_Tab)
         {
             //do what you need;
             return true;
         }             
  }
     // pass the event on to the parent class
     return QMainWindow::eventFilter(obj, event);
}

2.另一种方法是创建一个继承自QLineEdit的新类并重新实现keyPressEvent:

void LineEdit::keyPressEvent(QKeyEvent* event)
{
  if (keyEvent->key() == Qt::Key_Tab)
  {
     emit tabPressed();
     return;
  }
  QLineEdit::keyPressEvent(event);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

让 QLineEdit 检测 Tab 键按下事件? 的相关文章

  • 如何获取 QIcon 的文件/资源​​路径

    假设我做了这样的事情 QIcon myIcon resources icon ico 我稍后如何确定该图标的路径 例如 QString path myIcon getPath 问题是 没有getPath 会员 我找不到类似的东西 但肯定有办
  • QGraphicsView 和 eventFilter

    这个问题已经困扰我两天多了 所以我想我应该问一下 我在Win7上使用Qt 4 5 3 用VC2008编译 我有 MyGraphicsView 继承 QGraphicsView 和 MyFilter 继承 QObject 类 当我将 MyFi
  • 如何在 C++ 运行时更改 QML 对象的属性?

    我想在运行时更改 QML 对象的文本 我尝试如下 但文本仍然为空 这是后端类 class BackEnd public QObject Q OBJECT Q PROPERTY QString userFieldText READ userF
  • 程序意外完成 - QT Creator

    我正在尝试使用 QT Creator 使用 QT 框架开发 GUI 控制台应用程序 我使用的是Windows XP 我安装了QT 4 8 3和mingw 两者均已安装 没有任何错误 然后我安装了QT Creator QT 版本 路径中的 Q
  • 如何在按下托盘图标菜单操作时执行功能?

    int main int argc char argv QApplication oApp argc argv QAction action1 QMenu menu QSystemTrayIcon TrayIcon QIcon favico
  • (如何)我可以抑制未找到包配置文件的警告吗?

    我正在尝试创建一个CMakeLists txt尝试查找的文件Qt5 如果失败 则尝试回退到Qt4安装 该脚本到目前为止有效 但如果出现以下情况我总会收到警告Qt5未安装 注意FindQt5 cmake是由提供Qt5并且仅当以下情况时才可用Q
  • Qt mouseReleaseEvent() 未触发?

    我有一个显示图片的库 我们称之为 PictureGLWidget 其中 class PictureGLWidget public QGLWidget 所以 PictureGLWidget 扩展了 QGLWidget 在PictureGlWi
  • Qt:将拖放委托给子级的最佳方式

    我在 QWidget 上使用拖放 我重新实现了 DragEnterEvent dragLeaveEvent dragMoveEvent 和 dropEvent 效果很好 在我的 QWidget 中 我有其他 QWidget 子级 我希望它们
  • 如何在模型更改时停止ListView“跳跃”

    我需要做什么 我需要创建一个聊天窗口用一个ListView在 QML 中存储聊天消息 我设置listView positionViewAtEnd 以便跟踪最后的消息 我禁用positionViewAtEnd当我向上滚动时 我可以阅读过去的消
  • 加权 Voronoi 的 CGAL 2D APOLLONIUS 图 - 如何生成和获取面和顶点?

    我正在尝试根据阿波罗尼乌斯图生成加权沃罗诺伊 我正在使用 CGAL 库 我找不到如何从 apollonius 获取面和顶点的好例子 我有以下类型定义 typedef double NT typedef CGAL Cartesian lt N
  • 从布局中按名称获取小部件

    如果我想从 python Qt 的布局中获取特定的小部件 我应该如何进行 到目前为止我所做的 for i in range self ui horizontalLayout 14 count here it does fail name s
  • 如何创建用于 QML 的通用对象模型?

    我想知道是否有任何宏或方法如何将 Qt 模型注册为 QObject 的属性 例如 我有AnimalModel http doc qt io qt 5 qtquick modelviewsdata cppmodels html qabstra
  • 如何在 Qt 中以编程方式制作一条水平线

    我想弄清楚如何在 Qt 中制作一条水平线 这很容易在设计器中创建 但我想以编程方式创建一个 我已经做了一些谷歌搜索并查看了 ui 文件中的 xml 但无法弄清楚任何内容 ui 文件中的 xml 如下所示
  • QCombobox 向下箭头图像

    如何更改Qcombobox向下箭头图像 现在我正在使用这个 QSS 代码 但这不起作用 我无法删除向下箭头边框 QComboBox border 0px QComboBox down arrow border 0px background
  • 更改 Qt OpenGL 窗口示例以使用 OpenGL 3.3

    我正在尝试更改 Qt OpenGL 示例以使用更现代的 opengl 版本 330 似乎合适 所以我做了 在 main cpp 上设置版本和配置文件 设置着色器版本 更改着色器以使用统一 它现在构建没有任何错误 但我只看到一个空白窗口 我错
  • Qt 布局,在小部件大小更改后调整到最小大小

    基本上我有一个QGridLayout里面有一些小部件 最重要的是 2 个标签 我用它们将图像绘制到屏幕上 好吧 如果用户愿意 他可以更改传入图像的分辨率 从而强制标签调整大小 我们假设标签的初始大小是320x240 用户将 VideoMod
  • Qt 5.6 测试版 Visual Studio 2015

    我已经安装了这个 http download qt io development releases qt 5 6 5 6 0 beta qt opensource windows x86 msvc2015 5 6 0 beta exe mi
  • 同时从多个流中捕获、最佳方法以及如何减少 CPU 使用率

    我目前正在编写一个应用程序 该应用程序将捕获大量 RTSP 流 在我的例子中为 12 个 并将其显示在 QT 小部件上 当我超过大约 6 7 个流时 问题就会出现 CPU 使用率激增并且出现明显的卡顿 我认为它不是 QT 绘制函数的原因是因
  • 如何使用meta-toolchain-qt5构建Qt(带有QtWebEngine支持)?

    我正在尝试使用构建 Qtmeta toolchain qt5 但是当我通过这样做时poky glibc x86 64 meta toolchain qt5 cortexa7hf vfp vfpv4 neon toolchain 2 0 1
  • QSerialPort 中的 readAll() 不包括最后发送的响应

    我正在使用 Qt 来控制串行设备 如果我向串行设备发送命令 我会执行类似的操作serial gt write command r n 我制作了一个按钮 它将纯文本小部件内的文本更改为串行端口的响应 为了获得串口的响应 我使用serial g

随机推荐

  • 使用 .net SDK 从 Amazon S3 存储桶下载文件夹

    如何使用 net sdk 下载 s3 存储桶中存在的整个文件夹 尝试使用以下代码 它会抛出无效密钥 我需要下载存储桶中存在的嵌套 pesudo 文件夹中存在的所有文件 并将文件下载限制删除为默认值 1000 public static vo
  • 如何在Retrofit-2.0+ android中设置超时

    我提到这个链接 https stackoverflow com a 29380845 1083093但我似乎无法实现我的 我在用 compile com squareup retrofit2 retrofit 2 0 2 compile c
  • 将 Drupal 用户帐户导入 Rails,无需用户更改密码

    我想将一系列 Drupal 用户帐户导入到new铁轨项目 我正在使用 Devise 在 Rails 中进行用户身份验证 我希望能够将加密密码从 Drupal 导入到 Rails 中 以便用户在网站迁移时获得无缝体验 关于如何做到这一点有什么
  • 为什么 git revert 在这些情况下表现不同?

    假设我有ProjectA and ProjectB其中我只有一个名为test txt在这两个项目中并使用 git 跟踪它 第一次提交后 两个项目中的文件内容如下所示 one two three four 第二次提交后 两个项目中的文件内容如
  • dompdf:A4页面上的白边距

    我正在使用 dompdf 一个 PHP 库 创建 PDF 页面 但在设置正确的尺寸时遇到问题 当我使用 CSS 属性时 page size 21cm 29 7cm 例如 我想要页面的上半部分为红色 PDF 文件没问题 但打印后我得到了白色边
  • 如果我更改操作系统时区,事件(作为 json feed)、开始结束参数 unix 时间戳会有所不同

    我正在使用 fullcalendar 插件 如果有人可以帮助我 我将不胜感激 我通过 PHP URL 获取 json 事件 像这样的东西 calendar fullCalendar events myfeed php 因此 在返回事件的 p
  • Springboard 无法启动应用程序,错误为 3、0、4 等

    为什么 Xcode 无法在模拟器中启动应用程序 我在网上浏览了很多解决方案 但有时有效 有时无效 很多时候我解决问题的方法就是退出模拟器 删除应用程序 重置模拟器的内容设置 并清理和构建 但为什么我每次都要尝试其中的任何一个 所有 呢 Xc
  • 从命令行启动 Beyond Compare

    我已安装 Beyond Compare 3 C Program Files Beyond Compare 3 BCompare exe 和西格温 C Cygwin bin bash exe 我想要的是能够使用诸如以下的命令 diff
  • 核心图形和 GIF 颜色表

    我试图限制动画 GIF 的颜色数量 由一系列CGImageRef 但是 我在实际设置自定义颜色表时遇到困难 有谁知道如何使用核心显卡来做到这一点 我知道kCGImagePropertyGIFImageColorMap 下面是一些测试代码 大
  • 如何使用 $util.error 在 AppSync 中发送自定义错误

    我对 AppSync 错误处理有疑问 我想发送errorInfo对象以及错误响应 我尝试过 util error 根据文件 https docs aws amazon com appsync latest devguide resolver
  • 如何更改 Rails 中的 URL

    我有一个名为 Book 的资源 然后我有如下域 domain com books 272 但我想把它改成 domain com stories 272 仅针对 URL 不需要更改控制器 类等 在我有的路线中 map connect cont
  • 如何在JSP页面中包含angular2/4组件?

    我想在JSP页面中添加角度组件 有哪些可能的方法 描述更多 我在 JSP 中有一个应用程序动态 Web 应用程序 我创建的另一个应用程序是一个执行一些身份验证的角度组件 除了 object embedd 或 iframe 之外 还有其他方法
  • 使用共享库时的 Yarn 工作区最佳实践

    我有一个常见 或不太常见 的场景yarn workspaces并且在网上没有找到适合我的指南 纱线工作区看起来像这样 monorepo packages client admin theme lib Client用作我们的最终用户 它是一个
  • Databricks - Pyspark 与 Pandas

    我有一个 python 脚本 其中使用 pandas 来转换 操作我的数据 我知道我有一些 低效 的代码块 我的问题是 如果 pyspark 应该更快 我可以使用 pyspark 而不是 pandas 替换这些块 还是我需要将所有内容都放在
  • 如何在 C# 中读取 ID3 标签并将其写入 MP3? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有一个库可以在 C 中读取 ID3 标签并将其写入 MP3 我在搜索时实际上看到了几个 有人使用可
  • 在 Android junit 测试用例中获取测试项目的上下文

    有谁知道如何获得上下文测试项目在 Android junit 测试用例中 扩展 AndroidTestCase 注意 该测试不是仪器测试 注 2 我需要测试项目的上下文 而不是测试的实际应用程序的上下文 我需要它从测试项目的资产中加载一些文
  • 如何找到矩形周长中距离给定点最近的点?

    这是一个与语言无关的问题 给定一个矩形的尺寸l t w h 左 上 宽 高 和一个点x y 如何找到矩形周长上距离该点最近的点 我尝试用 Lua 解决这个问题 但任何其他语言都可以 到目前为止 这是我最大的努力 local function
  • 如何使用“pass”语句?

    我正在学习Python 我已经到达了关于pass陈述 我使用的指南将其定义为通常用作占位符的空语句 我仍然不完全明白这意味着什么 什么是简单 基本的情况 其中pass将使用声明以及为什么需要它 假设您正在设计一个新类 其中包含一些您还不想实
  • 数组语法与指针语法和代码生成?

    在书里 理解和使用 C 指针 作者 理查德 里斯 http shop oreilly com product 0636920028000 do第85页说 int vector 5 1 2 3 4 5 生成的代码是vector i 与生成的代
  • 让 QLineEdit 检测 Tab 键按下事件?

    我在文档中找不到任何内容 我找到了一个使用 PyQt 或其他东西的解决方案 但我宁愿不必使用它 另外 如果有信号就好了 但看起来没有 1 当您按照 Sam 建议安装事件过滤器时 m lineEdit gt installEventFilte