2009-12-12 14 views
8

Sto creando uno script Python che dovrebbe essere eseguito in background e notificare a un utente le modifiche e mi piacerebbe che funzionasse su più piattaforme. Il problema principale è che non ho affatto accesso a un mac, quindi la codifica specifica potrebbe essere molto difficile. wxPython sembra un enorme overkill per semplici popup, quindi c'è qualcosa di più leggero?Libreria di notifica Python multipiattaforma

+0

su Linux, la notifica OSD non è sufficientemente buona? è già disponibile su Ubuntu/Fedora per impostazione predefinita. – jldupont

+1

Sì, la notifica OSD è perfetta. Se devo, lo userò su Linux, Snarl su Windows e Growl su Mac, ma immagino che sarebbe bello avere qualcosa se le persone non vogliono installarlo/non usarlo. – Phoshi

+0

Dal momento che il sistema operativo è un * diverso * cosa significherebbe "piattaforma incrociata"? Puoi fornire esempi di pacchetti esistenti che soddisfano la tua definizione di "multipiattaforma"? –

risposta

4

Python su Windows e Mac viene fornito con i wrapper Tk? In tal caso, potresti essere in grado di stampare la tua casella di notifica. Non penso che abbiano un'API di notifica dead-simple (ad esempio, si passa una stringa e una finestra carina si apre per 5 secondi) tuttavia almeno si manterrà una sola base di codice.

Sto pensando ad altre app multipiattaforma come Skype, Dropbox e Thunderbird. Sembra che Skype e Thunderbird abbiano fatto il proprio giro e Dropbox ha seguito il percorso specifico della piattaforma.

+0

Ho appena provato "import Tkinter", e niente è andato storto, quindi penso che questo dovrebbe fare benissimo! Grazie :) – Phoshi

+0

Prego! Wow, colpo totale nel buio :) – JasonSmith

1

Adobe Wave è un framework di notifica multipiattaforma tuttavia non l'ho usato e non credo che sia un accordo orientato al desktop, ma piuttosto qualcosa per applicazioni Internet ricche e collegamento a siti Web. Tuttavia, si tratta di una sorta di notifica multipiattaforma, quindi forse vale la pena dare un'occhiata.

Questo mi ricorda che potresti essere in grado di trovare un sistema di notifica AIR che potresti in qualche modo attivare da Python. Mono con GTK # viene in mente in quanto supporta le tre principali piattaforme desktop. Vedi questo esempio GtkSharpNotification forse.

Infine, per il mio terzo attacco, forse un toolkit GUI multipiattaforma come wxWidgets ha il widget di cui hai bisogno.

+0

Tutti i buoni suggerimenti! Sfortunatamente, tutto sembra davvero eccessivo per letteralmente solo una scatola che si apre e fuori dallo schermo! :( – Phoshi

+0

Sì, sicuramente dipende dalla tua situazione e dal fatto che si tratti di un'app di vendita al dettaglio, di un'app aziendale o di cosa, ammetto, non trovo le mie idee molto convincenti, ma stai cercando di evitare di creare tre codebase a lungo termine: – JasonSmith

+0

Sono buone idee, e li considererei certamente se si trattasse di un progetto più ampio, ma non lo è affatto :( – Phoshi

0

Sembra che un modo per andare sia qualcosa come Growl/GNTP. Hai guardato allo python's gntp library?

Problemi correlati