【发布时间】:2015-10-29 00:17:05
【问题描述】:
我有一个qtabwidget,在任何给定时间都包含一个或多个标签。 我希望用户能够以任何顺序重新排列第二个到最后一个选项卡,但第一个选项卡保持在索引 0。
从我发现的所有内容来看,无法为每个选项卡独立启用setMovable。
到目前为止,我想出的最佳解决方法是如果用户移动第一个选项卡(或它前面的另一个选项卡),只需将第一个选项卡移回位置 0。这显然不是理想的,但如果它正常工作是可以接受的......它工作了一小会儿,但它偶尔会导致应用程序崩溃(当用户在它之前拖动一个标签并将鼠标放在那里时,它似乎会发生,所以它处于一个不断尝试重新排列的循环中,并且一些低级崩溃)
关于可行解决方法的任何其他建议(对于此方法,或此功能更易于实现的类似小部件)?我认为它可能会重新分类 QTabWidget 以忽略第一个选项卡上的鼠标拖动,但我不确定如何防止另一个选项卡在它之前移动......
【问题讨论】:
-
我打算为此发布一个解决方案,供我的一个软件项目使用。然后我发现它有一个错误,实际上并没有阻止标签被拖到位置 0....doh!
标签: python pyqt4 pyside move qtabwidget