2011-05-07 10 views
7

Jestem nowy w programowaniu GUI i nie znalazłem jeszcze najlepszej biblioteki do moich celów (chcę tworzyć aplikacje środowiskowe, np. Stacje dokujące, panele, pulpity itp.) Zacząłem uczyć się podstaw GTK , głównie za pomocą PyGtk. Większość tutoriali znalezionych na linii dotyczy GTK + 2.0. Ostatnio jednak, GTK+3 has been released. Więc nie jestem pewien co to oznacza dla mojej krzywej uczenia się:Nauka programowania GUI za pomocą GTK + 2 lub GTK + 3?

  • Czy powinienem uczyć się używając GTK + 3 i zapomnieć o GTK + 2?
  • Czy korzystanie z jednego lub drugiego naprawdę robi różnicę z punktu widzenia kodowania?
  • Czy istnieją już wiązania PyGTK dla GTK + 3?
  • Czy dostępny jest samouczek dotyczący GTK + 3?

Ponieważ jestem nowy w tym, rzucając się w to na ślepo, ale trochę wskazówek może być mądrzejszy. Więc jeśli masz, to zapraszamy :)

+3

Vala [http://live.gnome.org/Vala] Jest to nowy i wspaniały język, który jest specjalnie dla rozwoju GTK. – lepe

Odpowiedz

6

Zdecydowanie z GTK 3. 10-minutowe samouczki na temat http://developer.gnome.org/ używają GTK 3 i są doskonałym wprowadzeniem do programowania w GTK w kilku językach, w tym w Pythonie. W nadchodzących miesiącach prawdopodobnie pojawi się więcej samouczków dla GTK 3, aw międzyczasie nadal będziesz w stanie uzyskać większość samouczków dla GTK 2, aby pracować z minimum zamieszania. Podstawy nie są aż tak różne.

+0

"PyGTK-2.24 będzie ostatecznym głównym wydaniem PyGTK ..." Naprawdę czekam i przygotowuję się do PyGTK 3.0, aby rozpocząć aktualizację moich programów ... – saeedgnu

+3

@ilius, Nie będzie PyGTK 3.0. Jego wymiana, PyGI, już się zakończyła, więc możesz rozpocząć aktualizację! – ptomato

+0

ptomato: vao! Dzięki za informację. Zaczynam z tym ... – saeedgnu

-1

Możesz rozważyć próbę PyQt4. Zwykle działa całkiem dobrze na różnych platformach i jest stosunkowo łatwy do nauczenia.

Check out: http://diotavelli.net/PyQtWiki/Tutorials

Jeśli na pewno chcesz, aby trzymać z GTK, to bym pewnie nauczyć się podstawowych pojęć pygtk. Wygląda na to, że ma pewne wsparcie dla GTK + 3 (zobacz uwagi do wydania w http://www.pygtk.org/).

+0

@ King: dzięki za odpowiedź. Powiedziałeś "jeśli na pewno chcesz trzymać się GTK" ... wydaje się, że jest podtekst :) Czy widzisz jakiś powód, dla którego nie powinienem? (Właściwie zacząłem uczyć się jakiegoś PyQt4, ale byłem zaniepokojony faktem, że GTK jest częściej używany w Linuksie (ja używam Gnome Desktop)). – Benjamin

+1

Właściwie to nie miałem zamiaru niczego sugerować. Tylko kiepskie frazowanie :) Chodzi mi o to, że jeśli masz konkretne powody, dla których wybierasz GTK zamiast Qt, to może wypróbuj PyGTK. Sądzę, że oba są naprawdę świetne i sam korzystam głównie z Gnome. Z tego, co przeczytałem, wynika, że ​​Qt działa bardzo dobrze w sytuacjach międzyplatformowych, dlatego właśnie z niego skorzystałem. Ta i bardzo prosta dokumentacja sprawiła, że ​​bardzo łatwo się o mnie nauczyłem. –

+0

@Kieth: tak, dokumentacja Qt jest świetna. Ale wydaje się, że w porównaniu z Gtk jest mniej wiedzy publicznej. Nadal nie znalazłem rozwiązania [niektórych problemów z Qt] (http://stackoverflow.com/questions/5829585/pyqt4-how-to-make-undercorated-window-with-reserved-space). Dziękuję za odpowiedź :) – Benjamin

2

Chociaż późno, chciałbym podzielić się tymi informacjami w nadziei, że będą przydatne dla każdego, kto ma wątpliwości w przyszłości.

Jako ptomato said, GTK + 3 jest drogą do wykonania, a duża część wiedzy GTK + 2 dotyczy również GTK + 3. PyGObject to sposób postępowania z GTK + 3, a nie PyGTK. Aby uzyskać ogólne informacje na temat tej nowej zmiany, zobacz: PyGTK, GObject, and GNOME 3.

wiedzieć, co różni i jak radzić sobie z tymi zmianami, patrz:

o tutoriale, po te, które będzie pomocne: