Saad Javed wrote:
The bold was intentional. I was trying to get a shell command (wvdial)
to run when a button is pressed. The error I get is:
Traceback (most recent call last):
File "testgui.py", line 26, in <module>
testgui = TestGui()
File "testgui.py", line 19, in __init__
self.connect(dial, QtCore.SIGNAL('clicked()'), QtGui.qApp,
QtCore.SLOT(os.system('wvdial')))
TypeError: argument 1 of SLOT() has an invalid type
Was that helpful?
Yes.
When calling self.connect all of its arguments are evaluated. This means
that QtCore.SLOT is called with an argument of os.system('wvdial') which
in turn means that os.system is called with an argument of 'wvdial'.
Thus wvdial is run as part of creating an instance of the class;
os.system then returns an integer (see docs for explanation).
self.connect is expecting "os.system('wvdial')" (character string).
So try self.connect(dial, QtCore.SIGNAL('clicked()'), QtGui.qApp,
QtCore.SLOT("os.system('wvdial')")).
--
Bob Gailer
Chapel Hill NC
919-636-4239
_______________________________________________
Tutor maillist - [email protected]
http://mail.python.org/mailman/listinfo/tutor