Domanda

ho una certa conoscenza su Human Computer Interaction e alcuni script di programmazione conoscenze di base (Python) che corrono dall'inizio alla fine e automatizzare alcuni compiti che voglio fare o calcoli. Nelle interfacce ho passato costruiti in HTML con PHP dietro di esso.

Vorrei che i miei script python di evolvere da riga di comando e costruire alcune applicazioni con interfacce grafiche che consentono all'utente di trascinare i file e pulsanti per avviare le operazioni e verificare i progressi graficamente.

Da quando ho scritto il mio script in Python ho guardato alcune delle opzioni (Tkinter, wxPython, PyQt), ma non riesco a prendere una decisione tra loro di investire il mio tempo imparare uno e non l'altro. I miei criteri:

  • ha un'introduzione per i programmatori di GUI (quali sono le differenze da uno script, esempi di alcune interfacce semplici)
  • Un quadro che mi permettesse di correre i miei programmi sulle piattaforme che uso la maggior parte (Windows), ma che può anche funzionare su Mac e Linux forse, senza troppe modifiche.
  • curva di apprendimento molto bassa (facile fare prime interfacce) ma la flessibilità successivamente per personalizzare l'interfaccia di là di quanto il sistema operativo tipico permette (diversi colori, dimensioni e forme dei pulsanti, per esempio)
  • Se non è la stessa, simile a come si programma con interfaccia grafica per Android e / o smartphone Nokia. Sto pensando di scrivere alcuni programmi per queste piattaforme in un prossimo futuro, quindi mi piacerebbe riportare alcune delle lezioni qui su queste piattaforme, se possibile.

Ho trovato questo precedente domanda, ma nessuno di le risposte sono soddisfacenti.

Fa qualsiasi dei quadri si adattano a queste esigenze meglio degli altri o sono sostanzialmente simili e sarei felice con qualcuno di loro?

Nota: Se si pensa che dovrei prendere in considerazione altra lingua piuttosto che Python per raggiungere questo obiettivo, quale? Mi piace molto Python spazi sintassi e sono abituato ad esso in modo io preferirei di attaccare con esso.

È stato utile?

Soluzione

PyQt e / o molto simili Nokia sponsorizzato PySide (con una più 'rilassato licenza', LGPL invece di GPL, e lo stesso kit di strumenti di base, Qt) offrono il vantaggio di somiglianza con il toolkit gli smartphone di Nokia GUI (il vostro quarto punto) - Nokia ha acquistato Trolltech, i creatori di Qt, proprio perché Qt è stata la GUI toolkit fondamentale per le loro offerte di telefonia mobile

.

Tutti i toolkit si menzionano soddisfare le condizioni che si posa sui sistemi operativi (Windows, Mac, Linux), il secondo punto.

Il tuo primo e in certa misura terzi punti dipendono in buona parte di ciò che l'apprendimento materiali che avete a disposizione per ciascuno dei toolkit. Per i miei gusti, sembra che wxPython è un'esercitazione (quello nuovo in forma wiki è quello che sto puntando da e raccomandando) è veramente buono, e PyQt 's non è affatto male; documenti di PySide non includono un buon tutorial (che io sappia), credo che l'intenzione di PySide è che si impara prima PyQt (con i materiali disponibili ragionevoli), quindi applicare questi alcune differenze da programmare in PySide invece di PyQt ;-). tutorial di Tkinter che posso trovare sono o molto vecchi o concentrati sulla natura multi-lingua del toolkit di fondo, che a mio avviso li rende inferiori.

Se potete permettervi un libro, PyQt ha una buona (vale anche per PySide , come sopra) - questo eccellente gratuita di sola è purtroppo molto vecchio, così ho don 't pensare che aiuta. di wxPython proprio libro è anche abbastanza buono; di tkinter , ancora una volta, è molto datato.

Personalmente vi consiglio PyQt / PySide: potenza complessiva A +, facilità per iniziare (con il tutorial sopra e libro) A-, Nokia-phone programmatore somiglianza A. Per wxPython direi potere A, la facilità A, Nokia- tutorial datati di somiglianza B. Tkinter e libro sono negativi importanti.

È inoltre menzionare Android, ma io non vedo come tutto può essere simile a Android e la programmazione telefono-GUI di Nokia, allo stesso tempo. Forse non sono abbastanza familiarità con la programmazione GUI Android, ma a me sembra che si differenzia da ogni uno dei toolkit che hai citato.

Altri suggerimenti

PyGTK fufills almeno i primi tre punti. Non sono sicuro sul quarto. Ha un bel tutorial qui: http://www.pygtk.org/pygtk2tutorial/index.html

Credo che siete alla ricerca di Glade .

Il sito dice:

  

Glade è uno strumento RAD per consentire lo sviluppo rapido e facile di utenti   interfacce per il toolkit GTK + e l'ambiente desktop GNOME.

     

Le interfacce utente progettate in Glade vengono salvati in formato XML, e utilizzando   l'oggetto GtkBuilder GTK + questi possono essere caricati da applicazioni   in modo dinamico a seconda delle necessità.

     

Utilizzando GtkBuilder, i file XML Glade può essere utilizzato in numerose   linguaggi di programmazione tra cui C, C ++, C #, Vala, Java, Perl,   Python, e altri.

Sono un bel niubbo programmatore ancora, ma sto avendo appena alcuni problemi per ottenere le cose iniziato con C e Glade . Quindi credo che verrà eseguito senza problemi qui con il serpente. Date un'occhiata.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top