Proszę o wyrozumiałość, ponieważ jestem nowicjuszem w Linuksie. Od kilku lat piszę programy GUI w REALbasic na komputerze Mac. Próbuję nauczyć się języka Python i chcę pisać aplikacje GUI dla systemu Linux (przede wszystkim Ubuntu i Mint, ponieważ są to dystrybucje, do których mam dostęp i wydają się być najbardziej popularne). Zasadniczo mam trzy pytania:
- Czy są jakieś znaczące różnice między GTK a QT
- Grałem na Ubuntu
quickly
iGlade
na nim, ale rozumiem, że są one oparte na GTK 2 i to jest już przestarzałe. Czy to jest poprawne? - Czy są jakieś edytory typu „wszystko w jednym”, które pozwalają mi zaprojektować GUI, a następnie dodać do niego kod Python? (na przykład dodaj przycisk do okna w edytorze, kliknij dwukrotnie przycisk, a następnie dodaj kod Python, który ma zostać wykonany po naciśnięciu przycisku)
Przepraszam, jeśli to naprawdę głupie pytania, ale chcę zacząć uczyć się „właściwych” narzędzi od samego początku.
Odpowiedzi:
Spróbuję odpowiedzieć na twoje pytania, nie idąc w szaleńczym kierunku.
Różnią się znacznie, mimo że oba są bibliotekami widgetów. Zwykłe GTK + oparte jest na C, a QT na C ++. Chociaż istnieją powiązania dla prawie wszystkich języków programowania.
Masz całkowitą rację co do GTK2, chociaż jest tak wiele aplikacji GTK2. Spodziewam się, że GTK2 będzie przez jakiś czas używany, tak jak GTK1. Kiedy push przychodzi do gry, GTK2 jest przestarzałe, a jeśli dopiero zaczynasz, przejdź do GTK3.
Remeber GTK i QT to tylko zestawy narzędzi do widgetów. Na przykład ... Aplikacje Gnome, użyj GTK, a także Gnome-Libs. Jeśli chcesz, spójrz na Vala. Jest to uważane za proste, vala kompiluje źródło-źródło bezpośrednio do C i ma pełne powiązania dla wielu języków programowania. Możesz także spojrzeć na Anjuta, po prostu upewnij się, że masz nowe wersje gtk3. Najwyraźniej cieśnina PyGTK obsługuje tylko GTK2, ostatnio sprawdziłem. Jeśli chcesz uniknąć wszystkich bibliotek Linux DE, proponuję spojrzeć na QT. Zwykły QT różni się od aplikacji KDE, które zawierają biblioteki KDE. QT jest uważany za bardzo wieloplatformowy, co jest fajne, jeśli chcesz skompilować dla innych niż * nix. Jeśli chcesz zacząć korzystać z QT + Python, spójrz na PySide (LGPL) lub PyQT (GPL). QT ma kilka dobrych konstruktorów GUI, takich jak qt creator i qt-designer.
źródło
GTK i Qt to wieloplatformowe zestawy narzędzi interfejsu użytkownika i platformy programistyczne. Są to dwa najpopularniejsze frameworki używane w systemie Linux, ponieważ są open source i dają programistom potężny zestaw narzędzi do projektowania graficznych interfejsów użytkownika. GTK jest używany jako standardowy zestaw narzędzi dla środowisk GNOME, LXDE i Xfce Desktop, natomiast Qt jest używany w KDE.
Jeśli kodujesz w C, to oczywiście wybierz GTK +
Jeśli piszesz w C ++, wybierz Qt, w przeciwnym razie będziesz potrzebował Gtkmm (otoki C ++ nad GTK +)
Jeśli kodujesz w Pythonie, zarówno GTK +, jak i Qt mają powiązania dla języka: zobacz PyGtk, PyQt i PySide (ten uruchomiony przez samą Nokię).
źródło
Qt jest używany głównie w KDE, a GTK + w GNOME. Więc jeśli chcesz tworzyć dla GNOME, rozważ GTK +, ponieważ niezbędne zależności dla bibliotek GTK + powinny być już zainstalowane w systemie GNOME; użytkownik końcowy nie będzie musiał ich instalować. W rozwoju GTK + korzysta również narzędzie o nazwie Glade Interface Designer ; jeśli chcesz, możesz użyć tego do stworzenia interfejsów użytkownika.
źródło