问题标签 [qwizardpage]

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 投票
0 回答
48 浏览

python - QWizardPage.completeChanged.emit() 从 LineEdit 窃取焦点

我有一个QWizardPage可以选择现有名称或在 QLineEdit 中输入新名称的地方。新名称必须是唯一的,因此我重载QWizardPage.isComplete()以验证新名称是否唯一。

然后文档说,QWizardPage.completeChanged只要状态发生变化,就必须发出它。所以我QLineEdit.textChanged像这样使用插槽:

但是,每次您在 QLineEdit 中输入内容时,它都会失去焦点。因此,每次按键后,您都必须再次单击 QLineEdit 才能继续。所需的行为是让 QLineEdit 保持焦点,以便可以完全输入新名称,而不仅仅是单个字符。

我尝试返回焦点(注释掉的行),但这没有效果。我该如何解决?

0 投票
1 回答
35 浏览

python - 如何禁用 QWizard 所有页面的后退按钮?

我想禁用我的应用程序中的所有后退按钮。我只为第一页和最后一页找到了解决方案,但我无法为所有页面禁用它。

有没有人有办法解决吗?

0 投票
1 回答
48 浏览

qt - 如何制作将在所有 QWizardPages 上显示的小部件而不在每个页面中复制它?

Qt5。我有主课class StartupWizard : public QWizard

QWizardPages这些:class IntroPage : public QWizardPage

它从设置页面开始:

并且方法int nextId() const override;在每个页面中都被覆盖

一切正常,但是当我想插入一个通用小部件时,例如按钮,它将显示在QWizardPage我得到的每个小部件中: 在此处输入图像描述

这个按钮的初始化是:

它可能没有按钮,我将其作为示例显示... setSideWidget显示在向导的左侧,但我注意顶部。所以我想得到什么:

在此处输入图像描述

问题是,我如何制作一个可以显示在所有页面上的小部件?在QWidget我使用layoutsandinsertWidget中,但我在这里看不到它...

当然,我可以将小部件指针发送到所有页面,但我有另一种方法来修复它吗?

0 投票
1 回答
27 浏览

python - 使用 IndependentPages 选项时,根据来自其他页面的信息更新 QWizardPage 上的信息

我想构建一个 QWizard,它在一些初始页面中获取信息,然后在最后一页总结这些信息。用户应该能够返回并更新初始页面上的值,而不会丢失信息。因此,我正在使用 QWizard.IndependentPages 选项。这可以防止 Qt 运行清除先前输入数据的 cleanupPage()。然而,一个问题是 initializePage() 也只在页面第一次被访问时被调用。

我似乎找不到一种干净的方法来允许最后一页上的信息始终使用前一页上输入的任何内容进行更新。

我附上了一小段代码,有 3 页,以按原样说明功能。导航到第二页时,输入数据,然后在第 3 页查看该数据。当返回到第 2 页时,仍显示之前的数据(根据需要),当导航到第 1 页然后到第 2 页时,仍然是初始显示数据(根据需要)。然后数据操作第 2 页被更改,用户移动到第 3 页,旧数据仍然显示。这是因为没有调用构造函数或 initializePage() 函数,并且没有触发此标签的更新。

0 投票
0 回答
37 浏览

qt - 如何转到特定的 QWizard 页码?

Qt 5, QWizard

你好!我已经检查了有关该主题的一些答案,但仍然无法弄清楚。这是我想做的想法:

我想创建一个按钮组在QWizard页面之间导航。

例如,在我的顶部,我QWizard有:

在此处输入图像描述

单击按钮时,我得到一个 id,与 pages id 相同,我想用这个 id 显示用户页面。

我试着打电话:

当然,这是不正确的!我看到addPage(), page(), and pageAdded().了,但它没有设置方法。

当然我可以分析我的 id,获取当前页码,并调用this->back();next方法,但也许它有最简单的方法,我不知道?