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

Reply via email to