2010-02-22 34 views
9

Chciałbym spróbować napisać aplikację GUI w Pythonie. Dowiedziałem się, że jest na to wiele sposobów (różne zestawy narzędzi). I w tym kontekście mam kilka podstawowych (i moim zdaniem prostych) pytań?Jak pisać GUI w Pythonie?

  1. Czy to w ogóle dobry pomysł, aby napisać aplikację GUI w Pythonie?

  2. Jaki jest standardowy (najprostszy i najbardziej stabilny) sposób tworzenia aplikacji GUI w Pythonie?

  3. Czy ktoś może podać link do prostej aplikacji GUI Hello World napisanej w języku Python?

+0

Duplikat wszystkich tych pytań: http://stackoverflow.com/search?q=%5Bpython%5D+gui. Konkretnie ten: http://stackoverflow.com/questions/842075/practical-gui-toolkit –

Odpowiedz

6
  1. Zależy co aplikacja piszesz. Użyłbym Pythona do prostego GUI, tak.
  2. pomocą odpowiedniego zestawu narzędzi (takich jak PyQt - Wiązania Pythona dla popularnej Qt)
  3. Sure

Hello world w PyQt:

import qt,sys 

a = qt.QApplication(sys.argv) 
w = qt.QPushButton("Hello World",None) 

a.setMainWidget(w) 
w.show() 
a.exec_loop() 
+0

Myślę, że można szybko rozwijać za pomocą qtdesigner i pyuic, aby uzyskać dobry wygląd w python, :) – vernomcrp

1

Jeśli szukasz, aby dość prosty GUI, a następnie PyGTK jest niezwykle łatwy w użyciu:

http://www.pygtk.org/

Samouczek (z pobieralnym przykładowym kodem) można znaleźć here, a inny na Wiki.

2

Nie do końca duplikat, ale ten SO posting powinien dać porównanie niektórych zestawów narzędzi GUI Pythona, które odpowiedzą na # 3.

Jako odpowiedź dla numeru 1: Tak. Jest to całkiem dobre; języki skryptowe z zestawami narzędzi GUI są często dobrym sposobem na umieszczenie GUI w aplikacji. Można ich również używać do pakowania aplikacji napisanych w językach niskiego poziomu, takich jak C lub C++. Python oferuje dobrą integrację z kilkoma zestawami narzędzi. Zamieszczone powyżej przypisanie daje całkiem dobry przekrój opcji za pomocą próbek kodu.

Dla nr 2: TkInter ma standardową dystrybucję. Jest łatwy w użyciu, ale nie tak wyrafinowany jak (powiedzmy) QT lub WxWidgets.

+0

Próbowałem Tkinter i mój program pisze "ImportError: Brak modułu o nazwie _tkinter, pleas zainstaluj pakiet python-tk". – Roman

+0

@Roman: musimy wiedzieć, z której platformy korzystasz. Prawdopodobnie używasz systemu Windows i nie instalowałeś Tk podczas instalacji Pythona lub używasz Unix/Linux i musisz zainstalować oddzielny pakiet. –

1

pyton jest ok dla gui lepiej niż Perl i Ruby heres niektóre tk

from tkinter import * 
from tkinter import ttk 
root = Tk() 
ttk.Button(root, text="Hello World").grid() 
root.mainloop() 
0

Jeśli chcesz nauczyć się programowania GUI w Pythonie, używając Tkinter, można zobaczyć proces krok po kroku budowy prosty klon MineSweep w dwunastu progresjach tutaj: MineSweep for Python 3.x