Python 对于setFixedSize,QWidget不接受大于约23000的值
我猜,当计算机内存不足时,该代码会毫无错误地退出;它需要大约2吉比特的内存,我的笔记本电脑有6吉比特;对于QWidget的fixedSize,它仅适用于23000或更小的值。如何创建一个宽度和高度为1000000的QWidget,而不消耗这么多ramPython 对于setFixedSize,QWidget不接受大于约23000的值,python,qt,pyside2,Python,Qt,Pyside2,我猜,当计算机内存不足时,该代码会毫无错误地退出;它需要大约2吉比特的内存,我的笔记本电脑有6吉比特;对于QWidget的fixedSize,它仅适用于23000或更小的值。如何创建一个宽度和高度为1000000的QWidget,而不消耗这么多ram from PySide2.QtWidgets import * import sys class Window(QWidget): def __init__(self): super().__init__()
from PySide2.QtWidgets import *
import sys
class Window(QWidget):
def __init__(self):
super().__init__()
self.setFixedSize(1000000, 1000000)
def main():
app = QApplication(sys.argv)
w = Window()
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
编辑:我来自WPF/C#world,在那里有一个大尺寸的画布是可能的,没有任何问题或ram短缺。例如,一个地图的宽度和高度为30000,那么在一些实现中,可以超快速放大和缩小以获得良好的整体视图,而不需要像Qt这样高的ram消耗(在WPF中,我的最后一个应用程序中有很多项目,它需要大约21兆字节的ram,画布的宽度和高度都有100万像素;大小并不重要)。通过增加QWidget的大小,ram消耗会更高,这让人惊讶
我是Qt新手,到目前为止,我所了解的是,要想拥有一个具有缩放功能的大地图,我们需要使用场景和视图。因此,这是可行的,但与WPF不同。为什么你想要一个1000000乘1000000的小部件?也许有更好的方法来解决你想要的问题。如果地图是你的目标,Qt有。@JarMan谢谢你的场景而视图就是解决方案。