首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Python连接Qt设计器:用滑块连接控件拨号

用Python连接Qt设计器:用滑块连接控件拨号
EN

Stack Overflow用户
提问于 2015-06-08 19:14:06
回答 1查看 1.1K关注 0票数 0

我有兴趣做一个看似简单的RGB颜色控制器,其中包括一个控制拨号,3滑块不同的颜色和3液晶数字,所有在Qt设计界面。

刻度盘指向色轮上的位置,我将刻度盘周围的点范围从0到360,这样蓝色、绿色和红色最大值(最大强度的红色和蓝色和绿色输出的颜色只会给红色)分别出现在0、120和240。

滑块接受拨号输出的整数的输入。

我想知道如何使滑块开始在控制刻度盘的某一点上获取信息,并使滑块在接近并从该滑块的最大值后退时上下移动。

我还想知道是否有一种方法可以将控制拨号的输出与滑块的输入作为一个分数(如果控制拨号点为6,则滑块的点为3)。

任何想法,如何可以做到这一点,或一个更容易的方式,就整个事情将是伟大的!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-09 18:22:02

这个程序有一个拨号器和一个旋转盒。所述拨号器值与传递所述拨号器实际值的方法相连接。一旦该方法接收到该值,它就会继续并在其中执行一些操作(在本例中是将其减半),然后将这些值传递给尖端盒值。

代码语言:javascript
复制
import PySide.QtCore as QtCore
import PySide.QtGui as QtGui
import sys

class MainWindow(QtGui.QDialog):
        def __init__(self):
                QtGui.QDialog.__init__(self)

                dial = QtGui.QDial()
                dial.setNotchesVisible(True)
                self.spinbox = QtGui.QSpinBox()

                layout = QtGui.QHBoxLayout()
                layout.addWidget(dial)
                layout.addWidget(self.spinbox)
                self.setLayout(layout)

                #connect this event to the given method. 
                dial.valueChanged.connect(self.changeSpinbox)

        def changeSpinbox(self, value):
                #do some operation on this value. In this case half it.
                self.spinbox.setValue(value / 2)

app = QtGui.QApplication(sys.argv)
main_window = MainWindow()
main_window.show()
app.exec_()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30717261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档