问题标签 [qcompleter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
931 浏览

python - 改变 QCompleter 的风格?

我尝试在 QCompleter 的弹出窗口中以特定的方式在 QLineEdit 中应用样式表。

在 QtDesigner 中尝试:

在此处输入图像描述

代码:

但它不起作用

我正在寻找的是更改字母的颜色、背景颜色和出现在带有建议的框中的字母的对齐方式

也试试 QtDesigner

更改 QLineEdit 中显示的建议列表的视觉属性,但它们不起作用

在我的代码中尝试:

0 投票
1 回答
92 浏览

python - 自动完成后将光标移动到开头

我有一个小程序,我使用行编辑来自动完成。选择文本后,我的光标转到文本的末尾。那么如何将我的光标设置到起始位置呢?

我的代码:

在此处输入图像描述

但我想这样展示它:

在此处输入图像描述

0 投票
0 回答
38 浏览

c++ - 如何检测字符串是否是变量在编写QPlainTextEdit的代码编辑器中?

我正在用QPlainTextEdit编写一个javascript代码编辑器,现在我正在用QCompleter进行代码完成。问题是我不知道明文中哪个字符串是变量。我首先根据关键字检测变量,例如

但是当用户粘贴多行或删除多行,或者用户只删除现有“变量”的单个字符时,它不会正常工作

显然我不希望 QCompleter 同时弹出“变量”和“变量”。任何解决方案?多谢。

相关问题

0 投票
1 回答
483 浏览

python - python GUI按键值自动完成

我正在尝试在 python 中创建一个自动完成 GUI,这样当我输入名字时,我会看到可能的姓氏。例如,假设我有这本字典:{"George": ["Washington", "Bush"]}. 当我开始输入“G”时,我希望它显示“Washington”和“Bush”。选择“华盛顿”时,我希望显示“华盛顿”。我是 GUI 新手,我认为 PyQt 有一个自动完成的例子,但是这些单词不是键值对而是单词列表。 https://wiki.python.org/moin/PyQt/Adding%20auto-completion%20to%20a%20QLineEdit

有没有办法编辑链接中的代码,以便我可以启用此功能?谢谢!

0 投票
2 回答
1500 浏览

python - pyqt5 自动完成 QLineEdit - Google 放置自动完成

我正在尝试在 pyqt5 QLineEdit 中创建类似这样的内容(自动完成位置)。

在此处输入图像描述

在此处输入图像描述

有一个名为 QCompleter 的类,我可以用它来建议内容,但它需要一个已经形成的列表,但是这个 google places api 是一个基于建议的函数,我如何将每个击键发送到 google api 并获取建议并加载Qtextedit,有没有更好的方法来做到这一点

0 投票
0 回答
157 浏览

qt - 未显示 Combobox 的完成符

我为 Combobox 创建了一个完成器。

我的组合框.cpp

我的观点是基于 TreeView

完成者视图.cpp

我的模型基于QAbstractItemModel(功能parentindex对我的情况并不重要)

CompleterSourceModel.cpp

我查看并将我的代码与 4 个 Qt 示例进行比较,以获得 Completer 示例 1 示例 2 示例 3 示例 4

在我看来,我看不出我的代码和他们的代码有什么不同。他们只是设置setCompleter(),没有什么特别的,不需要信号/插槽。但我不知道为什么我的代码不起作用。当我在组合框中键入时,什么也没有出现。你能在我的代码中展示我的一些不好的东西吗?

更新

完成者数据.cpp

完成者数据.h

0 投票
1 回答
90 浏览

python - 使用 QCompleter 时程序退出并出错

我正在用 pyqt5 编写一个程序,并希望通过使用 sqlite 存储输入来使 QlineEdit 显示历史输入。当 focusInEvent 发生时,我使用信号捕捉光标并选择当时的历史记录,然后将结果放入 QCompleter 以便它可以在 QlineEdit 中弹出。现在我可以在 QlineEdit 对象中显示历史输入,但是当我单击任何值时,1 秒后,整个程序会自动退出并出现错误,显示“Python 已停止”。

0 投票
1 回答
425 浏览

c++ - 最后一个字符行编辑

我有两个价值清单。第一个是整数列表,第二个是字符串列表。我想根据 lineEdit 的最后内容显示这些不同的列表。例如,当用户输入 A => QCompleter 时,会显示字符串列表。如果用户输入 A1 => QCompleter 显示整数列表,因为输入的最后一个字符是 1。

我尝试这样:

如果最后一个字符是数字 => QCompleter show me list = { "1","2","7" };

其他 => 列表 = { "AAAA","AA","BB","AC" };

0 投票
1 回答
157 浏览

python - 如何在 QLineedit 完成程序中删除光标

这是我的 Qlineedit Completer 示例程序。在自动建议之后,我想在我写的行编辑中将文本显示为项目的开始completer.activated.connect(lambda: QTimer.singleShot(0, lambda: edit.home(False)))。它工作正常,但我不想在乞讨时显示光标,并在自动建议后显示光标。

下面是我的代码:

我得到了这样的图像:

在此处输入图像描述

0 投票
1 回答
592 浏览

python - 在 QCompleter 激活调用时查找 QStandardItemModel 的索引

我正在使用 QCompleter 在 PyQt5 中编写一个带有编辑字段的 GUI,以允许用户从弹出列表中选择输入。该列表内置在 QStandardItem 中并提供给 QCompleter。当用户从弹出列表中选择一个项目时,我需要的是 QStandardItem 模型中行的索引。

我试图研究文档https://doc.qt.io/qt-5/qcompleter.html并找到一个名为

遍历完成 要检索单个候选字符串,请使用需要完成的文本调用 setCompletionPrefix() 并调用 currentCompletion()。

这在我的情况下没有用,因为在我的 QStandardItem 模型中存在重复项目的风险,例如 ['cat,'cat','dog']。根据用户选择第一只还是第二只猫,有两个不同的 ID 与之关联。因此,获取用户选择的项目的 QStandardItem 模型的索引很重要。

我应该在 self.completer.activated.connect(self.complete_excipient_input) 中做什么才能在 self.model 中获取与用户选择的项目相对应的索引?

编辑

我试图运行@eyllanesc 提供的代码示例,它工作正常。但是,当我将代码应用到自己的代码中时,我收到错误消息指出 QObject::connect: Cannot connect QCompleter::activated(QModelIndex) to

并且发生了异常:TypeError connect() failed betweenactivated(QModelIndex) and onActivated()

下面是我的代码。它在 QtDesigner 中生成,随后转换为 python 代码。