[python-nl] input

Albert Visser albert.visser at gmail.com
Thu Dec 31 07:05:53 EST 2015


Hoi Marc,


On Wed, 30 Dec 2015 18:55:08 +0100, Marc Stevens <marcs op ziggo.nl> wrote:

>
> Beste Python experts,
>
> Ik ben sinds kort aan het stoeien met pyqt, en ik vraag me af hoe je de  
> knoppen die je met dit programma maakt een functie geeft.
> Ik heb het al geprobeerd door bijv.  in de volgende regel
>
> self.lineEdit.cursorPositionChanged['int','int'].connect(self.lineEdit.display)
>
> lineEdit te onderscheppen door lineEdit te vervangen door ‘invoer’
> en dan van te voren de regels
>
> def invoer():
> 	input(int(x))
>

zoals je mogelijk kunt afleiden uit de regel

>         self.lineEdit = QtWidgets.QLineEdit(self.layoutWidget)

is dit de widget waarin je je tekstinvoer doet, dit is niet datgene waar  
je op in wilt grijpen. Even verderop zie je de definitie van een knop:

>         self.pushButton = QtWidgets.QPushButton(Form)

en nog iets verder de definitie van het aanklikken ervan:

>         self.pushButton.clicked.connect(self.lcdNumber.clear)

wat dit in dit geval doet is de display (self.lcdNumber) leegmaken. Dat is  
een standaard functie van dit widget, daarom zie je hem nergens in het  
programma terug.
Als je zelf iets wilt doen met een andere knop kun je er op dezelfde  
manier een definiëren en dan verwijzen naar een eigen functie of methode,  
bv.

>         self.doeIetsButton = QtWidgets.QPushButton(Form)
>         self.doeIetsButton.clicked.connect(self.doeIets)

> def doeIets():
>     ...code ...

> Dit is natuurlijk te mooi om waar te zijn als dat zo eenvoudig was.
> Toch heb ik dit in een instructie video zo ergens gezien.
>
> Nu mijn vraag is:
> Hoe krijg ik meer grip op de functies van buttons en hoe kan ik zelf de  
> invoer regelen?
>

Kun je iets meer toelichten wat je bedoelt met "zelf de invoer regelen"?

-- 
Vriendelijke groeten / Kind regards,

Albert Visser

Using Opera's mail client: http://www.opera.com/mail/


More information about the Python-nl mailing list