针对类实现 QProgressBar

2024-02-14

我的 PyQt 程序有 2 个小部件(选择文件等),然后是一个显示解析文件结果的主窗口。

该程序非常适合小型样本文件,但是当尝试解析较大的文件时,它会挂起(显示“未响应”),然后在大约 30 秒左右后显示结果。

我想在主窗口打开之前实现一个 QDialog。 QDialog 将有一个进度条,让用户知道主窗口何时打开。

该进度条需要设置为弹出主窗口之前的时间长度。

实现这一点的最佳方法是什么?我看过一些例子,但进度条只是设置为标准化时间,而不是处理(解析)完成时。

我目前有以下打开主窗口的代码。

def openWidgetMain(self):
        self.WidgetMain = WidgetMain()
        self.WidgetMain.show()
        self.close()

该窗口的所有处理都是在它打开时完成的。那么如何连接QProgressBar呢?


将持久的进程放入某种线程中。读这个:http://qt-project.org/doc/qt-5/threads-technologies.html http://qt-project.org/doc/qt-5/threads-technologies.html从该线程发出信号来更新进度条。这样您的应用程序就不会挂起,并且用户可以看到进度。

但是,由您的加载例程决定在进度栏中显示哪个百分比。如果您无法计算准确的百分比,请尝试某种估计(例如,基于文件的大小与文件的处理量)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

针对类实现 QProgressBar 的相关文章

随机推荐

  • 使用 fromkeys 和可变对象创建字典。一个惊喜[重复]

    这个问题在这里已经有答案了 我在 Python 2 6 和 3 2 中遇到了令我惊讶的行为 gt gt gt xs dict fromkeys range 2 gt gt gt xs 0 1 gt gt gt xs 0 append 1 g
  • 具有不同高度项目的网格布局(React Native)

    Any idea for implementing a grid layout like the following image 答案取决于您要显示的数据 我想这是一个无限列表 向下滚动时会加载更多项目 如果是这种情况 你需要输入 3Lis
  • 流畅的 NHibernate QueryOver 选择不在另一个表中的项目(左连接)

    我有两张桌子 all 编号 丙A 道具B 其他一些专栏 hidden 编号 丙A 道具B 和相应的类 已映射 尚未映射关系 我想从第一个表中获取所有行 减去匹配的任何结果propA or propB财产 我设法通过 Criteria API
  • 重定向 Rails 4 中特定控制器的记录器输出

    我根据上一个问题的答案构建了一个解决方案重定向 Rails 3 中特定控制器的记录器输出 https stackoverflow com q 28821668 56082对于 Rails 3 它工作得很好 但是现在我尝试将相同的基于中间件的
  • buildQueryString 函数的 Purescript 类型

    我是 Purescript 的新手 我正在尝试编写一个函数 可以获取任何记录值并迭代字段和值并构建 一个查询字符串 我在想这样的事情 buildQueryString forall a PropertyTraversible r gt r
  • 复选框操作

    由于某种原因 这段小代码阻止用户检查实际的复选框并将复选标记放入其中 而检查它的唯一方法是单击该行 table tr click function checkBox this children td children input type
  • Cygwin git Push 挂起,msysgit 还好

    我使用代理 而且我对 git 很陌生 而且我使用的是 Windows XP 我已经能够制作一个git push origin master从 msysgit 工作 但无法使用 Cygwin 的 git 在 Cygwin 中工作 我在两个环境
  • 如何在 ASP Dropdownlist 列表项中使用彩色圆圈? (没有 jQuery)

    Goal 我想要一个下拉列表 如果某人的可用性为 True 则显示绿色 如果某人的可用性为 False 则显示红色 注意 我需要在没有 jQuery 的情况下完成此操作 我刚刚被告知我们不允许在我们的项目中使用 jquery 问题 背景 我
  • 允许双 URL 编码的请求路径有效

    我有一个在 IIS 7 0 上运行的标准 ASP Net WebForms 应用程序 带有集成托管管道 我们网站上的许多图像的文件名中都有空格 例如 baseball drawing gif 当我们将这些图像放入 html 页面时 我们对路
  • 使用参数调用事件处理程序[重复]

    这个问题在这里已经有答案了 我正在尝试使用参数调用事件处理程序 它工作得很好 没有争论 我这里哪里出错了 var box box function changeColor a this css background a box click
  • ForeignKey(User, unique=True) 和 OneToOneField 之间的区别[重复]

    这个问题在这里已经有答案了 之间有什么不同models ForeignKey Modelname unique True and models OneToOneField在姜戈 我应该在哪里使用models OneToOneField an
  • TextField maxLength - Android Jetpack Compose

    是否有任何开箱即用的解决方案来限制 TextField 中的字符大小 我没有看到任何像 XML 中那样的 maxLength 参数 您可以使用onValueChange参数限制字符数 var text by remember mutable
  • 左平衡二叉树

    我正在读一本关于数据结构的书 它说左平衡二叉树是一棵树 其中叶子仅占据最后一层的最左边位置 这对我来说似乎有点模糊 这是否意味着叶子仅位于根的左侧并分布在整个级别 或者叶子仅存在于整个树的左侧 究竟什么构成左平衡 我不确定我的猜测是否涵盖了
  • 如何将菜单项添加到 iOS 中的共享菜单

    我刚刚开始进行 iOS 开发 但我必须尽早做的事情是向系统菜单添加一个按钮 就像 Dropbox 在与电子邮件附件交互时添加按钮一样 该应用程序将用于视频 因此在共享菜单上为 QuickTime 播放器添加一个按钮将是理想的选择 我浏览了文
  • 使用 HMAC 或 OpenSSL 进行 URL 签名

    我对 url 签名感兴趣 例如 但我有一些要求 但我还没有解决方案 我将使用PHP or Python对于页面 所以我需要能够使用两者之一来签名和验证签名 我的计划是使用 priv pub 密钥方案来签署一些数据 并能够验证签名是否有效 但
  • 在用户因超时注销之前显示一条消息

    我们有一个使用 Devise 进行身份验证的 Rails 4 应用程序 我们想 在用户会话自动过期前 1 分钟向用户发送消息 让用户单击此消息上的按钮以继续他 她的会话 自动将用户发送到登录页面 并在其会话过期时显示一条消息 是否有任何 D
  • 在图片框中运行另一个应用程序

    这是我用来在图片框中运行另一个应用程序的示例代码 Imports System Diagnostics Imports System Runtime InteropServices Public Class Form1
  • Go 中在 EOF 上重新连接 TCP

    我有以下内容 In an init func if logStashHost lsconn err net Dial tcp logStashHost ToLogStash rec lsconn 然后两个函数 func ReadLogSta
  • 解压内容应用内购买ios

    如果进行应用内购买 Apple 托管的内容将以 zip 格式下载 我尝试解压缩这些内容 但提交使用 zipArchive 打开 zip 文件 ZipArchive za ZipArchive alloc init za delegate s
  • 针对类实现 QProgressBar

    我的 PyQt 程序有 2 个小部件 选择文件等 然后是一个显示解析文件结果的主窗口 该程序非常适合小型样本文件 但是当尝试解析较大的文件时 它会挂起 显示 未响应 然后在大约 30 秒左右后显示结果 我想在主窗口打开之前实现一个 QDia