Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ QT。QLabel性能_C++_Performance_Qt_Widget - Fatal编程技术网

C++ QT。QLabel性能

C++ QT。QLabel性能,c++,performance,qt,widget,C++,Performance,Qt,Widget,在我的应用程序中,我有一个类似于standart windows资源管理器的文件管理器 结构如下: 克斯克罗拉区 QWidget 埃菲尔 埃菲尔 埃菲尔 等等 每个EFile小部件包含5个QLabel。因此,当文件的数量超过30个时,我在创建它们时会有一点延迟。我决定只创建可见的文件,并创建隐藏在滚动或调整大小时,他们变得可见。但这并不是一个解决方案——延迟仍然存在(尽管它当然减少了) 问题是,我应该如何修改我的应用程序以消除显示文件时的延迟。答案是,您不需要编写

在我的应用程序中,我有一个类似于standart windows资源管理器的文件管理器

结构如下:

  • 克斯克罗拉区
    • QWidget
      • 埃菲尔
      • 埃菲尔
      • 埃菲尔
等等

每个EFile小部件包含5个QLabel。因此,当文件的数量超过30个时,我在创建它们时会有一点延迟。我决定只创建可见的文件,并创建隐藏在滚动或调整大小时,他们变得可见。但这并不是一个解决方案——延迟仍然存在(尽管它当然减少了)


问题是,我应该如何修改我的应用程序以消除显示文件时的延迟。

答案是,您不需要编写QLabels的自定义小部件。相反,您将覆盖paint()函数并使用QPaint绘制文本/像素贴图。这工作不像听起来那么多。在Qt示例/教程中有很多例子。

如果它真的是一个你想要实现的文件资源管理器,你应该考虑使用<代码> qFraseStimeMase结合<代码> qTreVIEW ,如这里的例子所示:


这将为您节省很多麻烦。

听起来这就是我要找的。谢谢,我试试看。