Czy istnieje projektant GUI dla Pythona?

107

Czy istnieje IDE GUI do programowania Pythona, tak jak Java ma Netbeans?

Chciałem takiego, w którym moglibyśmy przeciągać i upuszczać pola testowe i etykiety, tak jak robimy to w komponentach swing za pomocą netbeans lub eclipse.

Czy może istnieje dodatek w netbeansie lub w samym zaćmieniu?

Roshan
źródło
Czy szukałeś w Centrum oprogramowania Ubuntu niektórych elementów wymienionych w obszarze Narzędzia dla programistów> Python?
Christopher Kyle Horton
4
Osobiście zalecam próbę wykonania czegoś ręcznie po samouczku, ponieważ jeśli nie zrozumiesz, w jaki sposób rysowane elementy oddziałują na siebie, będziesz miał trudności z uruchomieniem przycisków i tak dalej.
Ivo Flipse
1
Zauważ jednak, że w przypadku wszelkich nietrywialnych aplikacji GTK, które nie używają glade lub czegoś podobnego, będą wyglądać dość brzydko i skomplikowane bardzo szybko. Nawet przy użyciu polany nadal będziesz mieć wiele okazji, aby dowiedzieć się o interfejsie API Pygtk.
Stefano Palazzo
Głosowałem za czymś takim jak Visual Studio dla Python?
abdul qayyum

Odpowiedzi:

103

Polana Zainstaluj polanę

Jeśli chcesz wysiwyg projektanta GUI, Glade jest najlepszym wyborem:

  • najpierw zainstaluj gladez centrum oprogramowania
  • stwórz GUI, zapisz jako, powiedzmy, myapp.glade

    wprowadź opis zdjęcia tutaj

  • Przejdź do karty sygnałów i skonfiguruj oddzwanianie, npon_window1_destroy

  • W swoim programie python powiedz GTK, aby załadowało definicje interfejsu użytkownika

    import gtk
    
    
    class MyApp (object):
    
        def __init__(self):
            self.builder = gtk.Builder()
            self.builder.add_from_file("myapp.glade")
            self.builder.connect_signals(self)
    
        def run(self):
            self.builder.get_object("window1").show_all()
            gtk.main()
    
        def on_window1_destroy(self, *args):
            gtk.main_quit()
    
    
    MyApp().run()
    

Po skonfigurowaniu wszystkiego możesz zanurzyć się w samouczku Polany (jak wspomniał Jeremy Kerr w swojej odpowiedzi). Zacznij od poznania różnych opcji układu i sygnałów.


Szybko Zainstaluj szybko

Kiedy czujesz się komfortowo z polowaniem, możesz zacząć z niej korzystać za pośrednictwem Quickly, który jest zestawem programów, które ułatwiają typowe zadania związane z tworzeniem oprogramowania. Zajmuje się tłumaczeniami, przechowywaniem konfiguracji, pakowaniem, integracją startera, w tym PPA i wieloma innymi:

sudo apt-get install quickly
quickly create ubuntu-application hello-world
cd hello-world/

Szybko tworzy teraz ogromny projekt ze wszystkim, czego potrzebujesz, już skonfigurowanym. GUI, pliki tłumaczeń, konfiguracja za pomocą Desktopcouch i tak dalej.

Zobaczysz szybko konfiguruje dla ciebie kilka okien (główną aplikację, konfigurację i dialog). Aby rozpocząć edycję GUI:

  • biegać quickly design

    wprowadź opis zdjęcia tutaj

  • Aby dostać się do kodu aplikacji, uruchom quickly edit

  • Idź do HelloWorldWindow.pypliku

  • Teraz zacznij dodawać programy obsługi sygnałów i logikę.

Na koniec, aby uruchomić aplikację, wpisz quickly run.

W tym momencie możesz uzyskać dostęp do dokumentacji PyGTK, aby dowiedzieć się o sygnałach, podpisach ich procedur obsługi, metodach różnych widgetów i tak dalej.


Zobacz także niektóre powiązane pytania:

Stefano Palazzo
źródło
2
Ta odpowiedź jest tak dobra, że ​​będzie stanowić punkt odniesienia dla innych :)
Nathan Osman,
1
Znalazłem na polanie okropnego i błędnego RADa.
renatov
49

Qt-Designer

PyQt zawiera Qt 's Designer , który jest całkiem fajnym graficznym edytorem GUI, jeśli masz ochotę napisać swoją aplikację w środowisku Qt.

Zrzut ekranu projektanta Qt

Kreator Qt

Nowe IDE Qt ma pełną obsługę zarówno w projektowaniu widżetów (jak projektant powyżej), jak i aplikacjach QtQuick, co jest lepsze w przypadku lekkich, płynnych aplikacji z obsługą dotykową (np. Tabletów / aplikacji mobilnych)

Macke
źródło
23

Czy szukasz pełnego IDE (tj. Edytora kodu, środowiska wykonawczego, narzędzi układu interfejsu użytkownika), czy po prostu narzędzia do tworzenia interfejsu użytkownika?

Jeśli szukasz pełnego środowiska programistycznego, zapoznaj się z zestawem narzędzi Quickly .

Jeśli chcesz tylko zaprojektować interfejsy, możesz użyć projektanta „glade”, aby ułożyć interfejs za pomocą widżetów GTK, a następnie załadować tę definicję interfejsu użytkownika do dowolnego programu python. Jest samouczek programowania GUI GTK + i Glade3 (z przykładami w Pythonie i C).

Jeremy Kerr
źródło
14

Eric IDE Zainstaluj eric

Spróbuj z Eric IDE. Myślę, że to najlepsze IDE zarówno dla Pythona, jak i Qt4.

Eric IDE

Witek
źródło
2
Dlaczego zostało to zanegowane? Eric to przyjemny graficzny interfejs użytkownika w języku Python, który integruje programowanie QT. Może projektować GUI (używając QT Designer), a nawet kompiluje pliki .ui do Pythona (nie trzeba używać wiersza poleceń). To trochę Eclipse lub Visual Studio dla pyQt. Na mój gust jest zbyt ciężki, ale dla innych jest interesującą opcją.
Javier Rivera,
@JavierRivera: prawdopodobnie dlatego, że wygląda jak IDE, a nie projektant GUI.
Jeremy Kerr
8

wxFormBuilder

Zależy to także od tego, którego zestawu narzędzi widgetu chcesz użyć. Wolę wxWidgets z python, wxPython .

Tak więc moją preferencją do tworzenia GUI jest wxFormBuilder , można go pobrać z następującego PPA:

Ma ładne proste przeciąganie i upuszczanie widżetów na płótno, i możesz szybko przejść do zakładki kodu, aby zobaczyć, co wygenerowało, co dla mojego niewykształconego oka jest czyste i uporządkowane. Jak sama nazwa na puszce mówi, że jest to narzędzie do tworzenia formularzy, w tym się specjalizuje. Nie spodziewaj się więc opracowania pełnego projektu z nim, jednak jeśli chcesz zachować projekt formularza osobny od kodu analizy, robi to dobrze pracować.

Adrian
źródło
1
Podstawowa wersja Ubuntu z jakiegoś powodu nie może wygenerować kodu Python. Mam nadzieję, że wersja PPA nie ma tego problemu.
Christoph
1
tak, wersja PPA może generować kod python.
Christoph,
3

W mieście jest nowy dzieciak: Camelot . Jest zaprojektowany, aby bardzo szybko budować GUI. Pomaga skupić się na aplikacji, a nie na kodzie GUI. Opiekunowie mówią

Camelot zapewnia komponenty do budowania aplikacji biznesowych na Pythonie, SQLAlchemy i Qt . Jest inspirowany interfejsem administratora Django. Możesz używać Camelot do tworzenia zarówno prostych, jak i złożonych aplikacji biznesowych z prędkością warp.

Struktura została kilkakrotnie zaprezentowana na międzynarodowych spotkaniach w języku python. Jego zalety to

Zalety programistów

  • Oprócz wysokiej jakości i sprawdzonej technologii

  • Widoki są powiązane z modelem danych bez pisania kodu

  • Możliwość dostosowania poprzez ramy Działania

  • Dokumentowane od samouczka wprowadzającego do drukowania raportów

  • Szybkość do rozwiązania możliwego do wdrożenia

Zalety użytkownika

  • Elastyczne i znane GUI

  • Wysokiej jakości edytory i kontrolki

  • Mnóstwo wbudowanych funkcji, takich jak import, eksport, drukowanie, tworzenie kopii zapasowych i przywracanie

  • Mapowane do procesów biznesowych

Sprawdź http://www.python-camelot.com/, aby uzyskać więcej informacji, prezentacje, filmy z YouTube'a i więcej.

Uwaga: Widziałem to w akcji i rozmawiałem z programistami. Mogę być stronniczy, ale szczerze wierzę, że to świetne oprogramowanie.

don.joey
źródło
2

SharpDevelop

Zrzut ekranu SharpDevelop

SharpDevelop służy do tworzenia aplikacji opartych na .Net Framework. Obsługuje IronPython i ma projektant GUI dla aplikacji WinForm, Silverlight, WPF. Chociaż Visual Studio ma również różne projektant GUI dla IronPython, jednak nie ma GUI dla WinForm.

Denny Imanuel
źródło
1

nikt nie wspomniał o narzędziu, które ma wiele zastosowań w innych językach i może być znane przez uruchomienie użytkownika - Eclipse ma perspektywę dla pytona o nazwie PyDev.

Osis
źródło
Czy Eclipse może zbudować GUI? Nawet w Javie?
Eric Wilson,
@FarmBoy: tak, może.
RolandiXor
1
Czy perspektywa pydev ma projektanta GUI?
Stefano Palazzo
-4

Najlepszym IDE w Pythonie jest PyCharm. Ale nie jest darmowy i nie ma projektanta GUI. http://www.jetbrains.com/pycharm/index.html

wildDAlex
źródło
8
OP specjalnie wspomniał, że chciał projektanta GUI.
Fouric
2
w rzeczywistości wydanie społeczności jest bezpłatne (4.5) i, szczerze mówiąc, żadna z pozostałych odpowiedzi nie dostarczyła również IDE do budowania GUI, po prostu wspominają o połowicznych rozwiązaniach do obejścia --- i, dla przypomnienia, PyCharm jest dobra sugestia, o ile wiesz, jak go używać (i tak, można go używać z konstruktorami GUI tak samo, jak inni) - możesz dodać tę notatkę do swojej odpowiedzi, jeśli chcesz odzyskać część utraconego przedstawiciela
osirisgothra