Jeśli ktoś chce opracować interfejs użytkownika w Pythonie, który wybrać: TkInter czy PyQt?
Właśnie zacząłem od TkInter i udało mi się uzyskać kilka prostych interfejsów użytkownika z podstawowymi widżetami, takimi jak etykieta, przycisk, pole tekstowe itp. Ciekawi Cię tylko, jak dobrze PyQt można porównać do TkInter?
Twoje zdrowie
python
user-interface
pyqt
tkinter
Arnkrishn
źródło
źródło
Odpowiedzi:
PyQt, jeśli tworzysz coś poważnego, zwłaszcza, że rzeczy, których się nauczysz, przełożą się bezpośrednio na pracę z Qt również w innych językach, jeśli kiedykolwiek będziesz musiał, a Qt jest prawdopodobnie najlepszym dostępnym obecnie zestawem narzędzi do obsługi interfejsu międzyplatformowego.
Istnieją tylko dwie rzeczywiste (potencjalne) wady:
PyQt jest dostępny tylko na licencji GPL. Oznacza to, że jeśli wydasz swój kod, musi on być dostępny na kompatybilnej licencji, na warunkach wyjątku od GPL firmy Nokia lub na licencji komercyjnej (która kosztuje). W przeciwieństwie do Qt, które jest teraz dostępne na licencji LGPL.
PyQt nie jest domyślnie dołączany do instalacji Pythona. Będziesz musiał sam spakować bibliotekę. (Ars Technica ma dobry artykuł na temat robienia tego dla Windows i OS X.)
źródło
PyQt jest teraz naszym głównym zestawem narzędzi GUI i po 1 roku rozwoju nie chcę wracać do niczego innego. Jest stabilny, dojrzały, wieloplatformowy i całkowicie natywny. Nawet okna dialogowe systemu (na przykład do otwierania plików) są używane przez system operacyjny.
Poprawiłem motyw XP, a teraz odpowiednio skórka aplikacji. Tworzy to bardzo profesjonalny wygląd, nieporównywalny z takim zestawem narzędzi
Swing
. Interfejs API jest obszerny i wykracza poza zwykłe elementy GUI, takie jak widżety. Obsługuje łączność z bazą danych, drukowanie, wątkowanie (używałem go i działa jak urok), ... nawet używam go do generowania plików PDF (żadne inne zewnętrzne biblioteki nie są potrzebne). Poleciłbym książkę Marka Summerfielda, chociażby „ Szybkie programowanie GUI w Pythonie i Qt ”, aby przyspieszyć. Pamiętaj, że Qt jest wyposażony w kreator GUI (projektant Qt), który jest najlepszy, z jakiego korzystałem (i wypróbowałem wiele z nich).Używam nawet tego kreatora do tworzenia makiet do pokazania użytkownikom (to takie proste!).
Przedstawiłem to 2 innym programistom tutaj i nie słyszałem ich narzekań ...
źródło
Używam
tkinter
do małych aplikacji z prostym interfejsem. Bardzo mi się to podoba, nawet jeśli brak dobrego edytora WYSIWYG może być problemem dla większej aplikacji.W przypadku dużych aplikacji
PyQt
może być lepszym wyborem. Ma bardzo dobrego projektanta ekranu, ale licencja może być problemem.Wreszcie
wxPython
może być dobrą alternatywą, ponieważ nie ma tych wad.źródło
PyQt jest naprawdę łatwy do nauczenia, a dokumentacja dla Qt działa również dla PyQt, są też porty dla .NET i Java. Jest to więc wróżka między platformami i językami. Masz również PyQt zintegrowany z Eric IDE .
Wsparcie dla stylów CSS jest również naprawdę genialne.
Zobacz nowy instalator OpenSuSE, aby zobaczyć, co możesz z nim zrobić.
źródło
Możesz tworzyć ogromne GUI za pomocą Tkinter. Jeśli podoba Ci się moduł pytkgen, pomoże on w tworzeniu GUI Tkinter z definicji JSON: https://github.com/tmetsch/pytkgen
źródło
Używam PyQt. Jest wieloplatformowy, łatwy w obsłudze i niezawodny.
Użyłem TkInter lekko i nie widzę żadnych punktów, dzięki którym TkInter jest lepszy niż PyQt.
źródło