【问题标题】:PyQt - QScrollBarPyQt - QScrollBar
【发布时间】:2010-09-13 10:22:13
【问题描述】:

亲爱的 Stacktoverflow,你能告诉我一个如何使用 QScrollBar 的例子吗?谢谢。

【问题讨论】:

    标签: python pyqt


    【解决方案1】:

    这将取决于您使用 QScrollArea,它是一个实现显示大于可用空间的东西的小部件。您不需要直接使用 QScrollBar。我没有 PyQt 示例,但在 QT 发行版中有一个 C++ 示例,它被称为“图像查看器”。对象层次结构仍然相同

    【讨论】:

    • 哈拉德,感谢您的回复。我尝试了 QScrollArea,这在我的情况下似乎更简单。但是我有一个 QFormLayout 放在那个 QScrollArea 里面,这个小部件只接受 QWidgets。我在 QFormLayout 周围创建了一个空的 QWidget,但没有显示任何内容。
    • 首先测试您使用布局创建的小部件,而不使用周围的滚动区域,如果显示正确,您将需要深入研究 QScrollArea 文档,恕我直言,它是 QT 中比较麻烦的部分之一。一般来说,布局不是小部件,它只是小部件的格式
    【解决方案2】:

    在 PyQT 源代码分发中,查看文件:

    examples/widgets/sliders.pyw

    或者有一个最小的例子here(我想我不应该复制粘贴,因为潜在的版权问题)

    【讨论】:

      【解决方案3】:
      >>> import sys
      >>> from PyQt4 import QtCore, QtGui
      >>> app = QtGui.QApplication(sys.argv)
      >>> sb = QtGui.QScrollBar()
      >>> sb.setMinimum(0)
      >>> sb.setMaximum(100)
      >>> def on_slider_moved(value): print "new slider position: %i" % (value, )
      >>> sb.connect(sb, QtCore.SIGNAL("sliderMoved(int)"), on_slider_moved)
      >>> sb.show()
      >>> app.exec_()
      

      现在,当您移动滑块时(您可能需要调整窗口大小),您会看到滑块位置打印到终端,就像您操作手柄一样。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-01-25
        • 2019-02-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-28
        • 2014-07-03
        • 2015-05-29
        相关资源
        最近更新 更多