[PIPython] Il modulo curses

Alex Martelli aleaxit
Ven 19 Nov 2004 15:16:40 CET


On Thursday 08 January 2004 01:32 pm, 
pierluigi.fabbris.125982.212382.removemsg a it.buongiorno.com wrote:
> Il modulo curses è un modulo che mi piacerebbe imparare ad usare, ma
> purtroppo i manuali che vengono dati sono di scarso aiuto.

Penso di coprirlo benino in "Python in a Nutshell", per quel nucleo minimale 
di funzionalita` che si usa di solito.  Iscriviti a safari.oreilly.com 
(ricordati di cancellare entro 14 gg per non dover pafare l'abbonamento) per 
dargli un occhio gratis, la coverage di curses e` al capitolo 10, "File and 
Text Operations".

> Io ho fatto quello che il manuale dice:
> import curses
> stdscr=curses.initscr()

Meglio usare curses.wrapper, come spiego a pag. 208 del Nutshell.

> e dopo aver inizializzato così. Volevo usare un metodo del suo modulo:
> getmouse(). Purtroppo nulla. Tutto questo dopo aver scaricato il modulo
> curses. Io lo volevo usare in ambito web per gestire un evento mouse che
> mi dicesse se si è fatto click su un riferimento html <a href=””> </a>

??? cosa intendi per "in ambito web"?  curses gestisce finestre che siano in 
puro modo testo/console sulla macchina locale (tipicamente xterm o konsole 
ecc ecc in Linux o simili).

> per avviare così la funzione os.startfile() quando è intervenuto
> l’evento del click sul mouse. Tutto questo all’interno di un motore di
> ricerca. Come usare il curses? Io lo creerei in ambito windows e
> funzionare o su Windows o meglio ancora in Linux. E’ eventualmente

curses su windows non funzia bene, su Linux si`, ma comunque non "attraverso 
la rete", solo su di una finestra di puro modo testo (emulatore terminale).

> possibile creare la stessa cosa con Tkinter?

curses non gira su Tkinter.  E` sicuramente possibilissimo scoprire dove viene 
cliccato il mouse su di una finestra Tkinter (e` un evento che ricevi in una 
funzione di callback, come sempre per un po' tutte le GUI), e` molto piu` 
facile che in curses nonche` piu` portatile fra Win e Lin.  Ma comunque 
funziona pur sempre sulla macchina locale, non "in ambito web".


Alex




More information about the Python mailing list