<p>我有一个带有两个简单按钮的小GUI来访问LabJAck IO模块。此模块用于打开或关闭与其相连的外部设备。我写了一个初始化设备的类和几个方法来处理设备的一些事情,其中两个是,打开和关闭。我之所以要用这种方式访问LAbJack是因为我希望代码是好的和整洁的,我将有几个设备连接到我的机器上,每个设备都有特定的IO命令。在</p>
<p>这是我的LabJAck代码:</p>
<pre><code>import u3
class LabJack:
def __init__(self):
try:
self.Switch = u3.U3()
except:
print "Labjack Error"
#Define State Registers for RB12 Relay Card
self.Chan0 = 6008
Chan1 = 6009
Chan2 = 6010
Chan3 = 6011
Chan4 = 6012
Chan5 = 6013
#Turn the channel on
def IO_On(self,Channel):
self.Switch.writeRegister(Channel,0)
#Turn the channel off
def IO_Off(self,Channel):
self.Switch.writeRegister(Channel,1)
#The State of the Channel
def StateSetting(self,Channel):
self.Switch.readRegister(Channel)
if Switch.readRegister(Channel) == 0:
print ('Channel is On')
else:
print('Channel is Off')
#Direction of Current Flow
def CurrentDirection(self,Channel):
self.Switch.readRegister(6108)
print self.Switch.readRegister(6108)
</code></pre>
<p>下面是我的GUI代码:</p>
^{pr2}$
<p>运行代码时,我得到以下错误:</p>
<pre><code>Traceback (most recent call last):
File "ALDSoftwareMainWindow.py", line 26, in <module>
form = ALDMainWindow()
File "ALDSoftwareMainWindow.py", line 20, in __init__
self.Valve_ON.clicked.connect(self.ValveControl.IO_On(6008))
TypeError: connect() slot argument should be a callable or a signal, not 'int'
</code></pre>
<p>我不知道我做错了什么。任何帮助都将不胜感激。在</p>
<p>谢谢。在</p>