gpt4 book ai didi

Qt 对 QSplitter 意义的 opaqueresize 属性

转载 作者:行者123 更新时间:2023-12-04 11:15:12 29 4
gpt4 key购买 nike

我在网上没找到这个...

这是什么opaqueResize QSplitter ( see doc ) 上的属性代表什么?

谢谢。

最佳答案

我不太确定你在这里问什么。尽在docs .

QSplitter resizes its children dynamically by default. If you would rather have QSplitter resize the children only at the end of a resize operation, call setOpaqueResize(false)



意思是如果你设置 setOpaqueResize(false)在您的拆分器上,启动您的应用程序并尝试拉动拆分器以调整它所持有的小部件的大小,直到您释放拆分器,它才会实际调整小部件的大小。另一方面,如果它设置为 true当您拖动拆分器 handle 时,它会尝试调整小部件的大小。

例如,如果您的自定义小部件需要很长时间来绘制,则关闭此功能会很有用,因为它会使调整大小变得非常缓慢。

但要回答你的问题,属性(property) opaqueResize保存调整大小是否不透明,即它是否会在拖动拆分器时调整小部件的大小。

示例:

这是一个您可以尝试的 PyQt 示例(我在 Python 中有示例,但在 C++ 中应该可以正常工作):
from PyQt4 import QtGui, QtCore

class Example(QtGui.QWidget):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
top = QtGui.QLabel('test', self)
bottom = QtGui.QPushButton('test', self)
splitter = QtGui.QSplitter(QtCore.Qt.Vertical)
# Try changing from False to True
splitter.setOpaqueResize(False)
splitter.addWidget(top)
splitter.addWidget(bottom)
hbox = QtGui.QHBoxLayout(self)
hbox.addWidget(splitter)
self.setLayout(hbox)
self.setGeometry(250, 200, 350, 250)

def main():
app = QtGui.QApplication([])
ex = Example()
ex.show()
app.exec_()

if __name__ == '__main__':
main()

希望这能让事情更清楚一些。

关于Qt 对 QSplitter 意义的 opaqueresize 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5579025/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com