[Gfoss] pyQt per plugin QGis: differenza nei signals emessi tra clicked e pressed

Mauro Alberti alberti.m65 a gmail.com
Mer 10 Ott 2012 18:10:17 CEST


io lo interpreterei così: immaginando un utente che preme e rilascia un
bottone, verranno emessi in successione i segnali *pressed*, *released, **
clicked*. Sta a noi scegliere se e quale segnale intercettare con la
funzione apposita che andiamo a scrivere: se *pressed *piuttosto che *released
*o *clicked*, in base a quello che vogliamo fare tenendo conto del
significato della scelta dell'utente.
Potremmo creare una funzione che agisca quando viene emesso il segnale *
pressed*, ed un' altra che viene attivata dopo, con *released*, non appena
il bottone viene rilasciato. Se non ci interessa distinguere tra i due
momenti, possiamo usare *clicked*.

Dall'help di Qt Creator la descrizione dei possibili segnali emessi da un
QAbstractButton è più dettagliata, ma mi sembrano gli stessi concetti,
fatto salvo che *clicked *è emesso anche dal premere uno shortcut oppure
quando da codice chiamiamo la funzione click o animateClick sul bottone
stesso.

-----------------------------------------

QAbstractButton provides four signals:

   1. pressed <http://qabstractbutton.html#pressed>() is emitted when the
   left mouse button is pressed while the mouse cursor is inside the button.
   2. released <http://qabstractbutton.html#released>() is emitted when the
   left mouse button is released.
   3. clicked <http://qabstractbutton.html#clicked>() is emitted when the
   button is first pressed and then released, when the shortcut key is typed,
   or when click <http://qabstractbutton.html#click>() or
animateClick<http://qabstractbutton.html#animateClick>()
   is called.
   4. toggled <http://qabstractbutton.html#toggled>() is emitted when the
   state of a toggle button changes.

------------------------------------



2012/10/10 Luca Mandolesi <mandoluca a gmail.com>

> Grazie mauro...ma ancora ho dei dubbi...facendo una pulsantiera per
> andare avanti e indietro tra i record di un db la chiamata è pure
> sempre con pressed...ma ovviamente c'è sia pressione che
> rilascio...qual'è un caso in cui pigi sul bottone ma non rilasci mai?
> Lo scorrimento di una barra laterale? Ma prima o poi dovrai
> mollare..mi sfugge evidentemente qualche concetto.... tipo la
> traduzione corretta di push down ... forse è la velocità che determina
> una azione diversa?
>
> Grazie intanto
>
> Luca
>
>
-------------- parte successiva --------------
Un allegato HTML ? stato rimosso...
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20121010/6eeeeceb/attachment.html>


Maggiori informazioni sulla lista Gfoss