问题标签 [pyqt4]

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 投票
3 回答
3609 浏览

algorithm - PyQt4 QDialog - 要求字段不能为空

好吧,这让我发疯了。我确定这是微不足道的,但是我一直在寻找答案并没有看到它。我敢肯定,这将是一个平坦的额头。

我正在用 Python 设计一个 Qt4 对话框。我通过 QDesigner 生成了代码,系统上有 4 个输入:

  • QLineEdit(不能为空)
  • QPlainText编辑
  • QLineEdit(不能为空)
  • QComboBox(需要选择其中一个选项)

问题:是否存在使字段为“必需”的标志?强制它是非空白的?

我试图使用 QRegExpValidator,但不确定这是正确的:

我知道我遗漏了一些明显的东西(请不要让它成为 self.optionName.setRequired() 函数)。

更新

我现在添加了这个类:

像这样称呼它:

并在类的 validate() 函数处设置断点,但从未调用过。

我错过了一些基本的东西吗?

TIA

麦克风

0 投票
2 回答
2174 浏览

python - PyQt 上下文菜单

我正在向 QTableWidget 动态添加上下文菜单:

currentItem.text() 是从 db 获取的播放列表名称,您可以看到只有一个函数 (addToPlaylistAction) 接收来自不同操作的所有触发器。在我的 addToPlaylistAction 函数中,如何确定单击了哪个菜单?

0 投票
1 回答
331 浏览

python - PyQt:在窗口上显示 QTextEdits

我想在我的主窗口的任意位置显示一些 QTextEdits。下面是我的第一次尝试。这不太行。如果我在显示窗口之前创建文本编辑,则会出现文本编辑,但如果我在显示窗口之后创建它们,它们不会出现。那是怎么回事?我怎样才能让后来创建的那些显示出来?

0 投票
3 回答
3750 浏览

python - Python/PyQT QString 不会插入 MySQL 数据库

我正在尝试使用 QLineEdit 小部件从用户那里检索一些值。当 QPushButton 引发单击事件时,我希望从所有 QLineEdit 小部件中检索文本并将其存储在本地 MySQL 数据库中。但是,当我尝试在插入语句中使用字符串替换时,这些值不会被替换。这是我的sql语句:

所有 self.edi_xxx 变量都只是 QLineEdit 小部件。当按下按钮时,会触发以下内容:

提交所做的只是创建一个数据库对象并将值写入数据库。然而,为了调试,我打印出构建的 SQL 语句,结果如下:INSERT INTO jobs (incident_id, organization, organization_poc, media_type) VALUES ("", "", "", "")。

我也尝试使用 str() 函数将 QString 转换为字符串,但同样的事情发生了。

任何帮助将不胜感激 :)?

大号

编辑:这是减去导入的完整代码:

0 投票
3 回答
3272 浏览

sqlite - 使用 py2exe 时,PyQt 应用程序无法加载 SQlite 数据库

我的 PyQt 应用程序在 Linux 上运行时,在我的 Windows 构建环境中运行时,或者在使用 py2exe 构建它的机器上冻结时运行良好。但是在将冻结的可执行文件及其支持文件移动到另一台机器后,它无法加载数据库驱动程序。

当我拥有 Python2.5 和更早版本的 PyQt 和 py2exe 时,它​​运行良好。但是在升级我的工具链后,我得到了这些错误:

  • dbname.open 返回 false
  • lastError(dbname) 是“未加载驱动程序”

我有一个放置 qsqlite4.dll 的 sqldrivers 文件夹。这对于以前的构建环境是必要的,但移动或重命名该 DLL 不会改变任何行为。我认为这是 Qt 找不到的 DLL,但我无法告诉 Qt 去哪里看。

我目前正在运行这些版本:

  • python-2.6.3
  • PyQt-Py2.6-gpl-4.6-1
  • py2exe-0.6.9.win32-py2.6

Dependency Walker 中的分析给了我这个错误:
LoadLibraryW("\application\sqldrivers\qsqlite4.dll") 返回 NULL。错误:此应用程序无法启动,因为应用程序配置不正确。重新安装应用程序可能会解决此问题 (14001)。
当我向 Dependency Walker 询问有关 Qsqlite4.dll 的详细信息时,它说:
错误:“\application\sqldrivers\QSQLITE4.DLL”的并行配置信息包含错误。

这可以解释为什么 DLL 不会加载,但我仍然不清楚如何修复它。仔细检查显示我调用的大多数 DLL 的错误。我需要为我加载的每个 Qt DLL 包含一个清单吗?

提前致谢。

0 投票
2 回答
11110 浏览

pyqt - Python 3 和 PyQt 4 建议

是否推荐Python 3PyQt 4的组合?有没有其他选择?

0 投票
1 回答
1893 浏览

user-interface - 如何在 QTableWidget 内的 VerticalHeaderItem 上启用上下文菜单?

我有 QTable 小部件,我在其中设置

我设置了一个上下文菜单

它适用于我的表格元素,而不是第一列,即 VerticalHeaderItem。基本上,当我右键单击第一列项目时,不会弹出上下文菜单,而单击任何其他元素 > 第一列会导致上下文菜单弹出(填充了我定义的 QActions,为清楚起见此处未显示) .

为了使第一个(VerticalHeaderItem)列对右键单击做出反应,我应该设置任何属性吗?Qt.ItemFlags 也许?如果是这样,任何人都可以编写代码片段如何正确设置它?最好在 Python 中,但 C++ 也可以。

我的配置:QT 4.5.2,PyQT 4.5.4,在 Windows XP SP2 下。

0 投票
1 回答
4884 浏览

python - 使用 PyQt 的资源系统的问题

我正在尝试使用 PyQt 的资源系统,但似乎我不知道我在做什么!我已经创建了应用程序,连同它的 GUI,我只是想导入一些图像以与程序一起使用。

我使用 QtDesigner 创建资源文件并使用 pyrcc4.exe 编译它。但是当我尝试导入资源文件时,我得到了这个错误:

我究竟做错了什么?

0 投票
3 回答
840 浏览

pyqt4 - PyQt4 信号和槽

我仍在学习 Python 和 PyQt4,当按下“Harvest”按钮时,我似乎无法在我的 gui 窗口上显示任何内容。我用粗体强调了我对信号和插槽的了解不足。

更新代码:

0 投票
1 回答
500 浏览

python - PyQt:在 QPlainTextEdit 中修改星号时出现问题

我遇到了 QPlainTextEdit 的问题。我希望只要内容被修改,“内容已被修改”星号就会出现在标题栏中。

在下面的示例中,键入几个字母。星号按原样显示。按 Ctrl+S,星号会消失。但是,如果您再输入几个字母……为什么星号不再出现?