[PyQt] Help with help action
Michael Towers
gradgrind at online.de
Thu Sep 27 05:24:02 BST 2007
Hi Thorsten,
You're not 'show'ing your help widget, which I imagine should be some
sort of pop-up. For example, something like:
def help(self):
dlg=QtGui.QDialog()
browser = QtGui.QTextBrowser()
browser.append('Help')
layout = QtGui.QVBoxLayout(dlg)
layout.addWidget(browser)
dlg.exec_()
Thorsten Kampe wrote:
> Hi,
>
> I'm trying to teach myself GUI programmming with the help of the new
> PyQt book and the examples from the PyQt package. Although I've been
> doing Python for five years I have a hard time doing OOP stuff.
> Frankly, I never know when and where to put this "self" thing.
>
> My script (see below) works (no wonder, it's cut down from the
> application.pyw example). But as soon as I wanted to add a help action
> it doesn't work. The help action is ripped from Mark Summerfield's
> sandbox.pyw and calculate.pyw.
>
> Can anyone help me with the help function?!
>
> ##
> #! /usr/bin/env python
>
> import sys
> from PyQt4 import QtGui, \
> QtCore
>
> class MainWindow(QtGui.QMainWindow):
> def __init__(self):
> QtGui.QMainWindow.__init__(self)
>
> # create actions
> self.aboutAct = QtGui.QAction(self.tr('&About'), self)
> self.aboutAct.setStatusTip(self.tr('Show the application\'s About box'))
> self.connect(self.aboutAct, QtCore.SIGNAL('triggered()'), self.about)
>
> self.helpAct = QtGui.QAction(self.tr('&Help'), self)
> self.helpAct.setStatusTip(self.tr('Online help'))
> self.connect(self.helpAct, QtCore.SIGNAL('triggered()'), self.help)
>
> # create menus
> self.helpMenu = self.menuBar().addMenu(self.tr('&Help'))
> self.helpMenu.addAction(self.helpAct)
> self.helpMenu.addAction(self.aboutAct)
>
> # create status bar
> self.statusBar().showMessage(self.tr('Ready'))
>
> def about(self):
> QtGui.QMessageBox.about(self, self.tr('About Application'),
> self.tr('Application does something\n'
> 'This software comes without warranty, liability or support!'))
>
> def help(self):
> browser = QtGui.QTextBrowser()
> browser.append('Help')
> layout = QtGui.QVBoxLayout()
> layout.addWidget(browser)
>
> app = QtGui.QApplication(sys.argv)
> mainWin = MainWindow()
> mainWin.show()
> app.exec_()
> ##
>
> _______________________________________________
> PyQt mailing list PyQt at riverbankcomputing.com
> http://www.riverbankcomputing.com/mailman/listinfo/pyqt
>
>
More information about the PyQt
mailing list