2012-09-30 188 views
2

我們在C#中有控制檯應用程序選項,但是如何在python中創建控制檯GUI? 我應該注意我想在Windows中編譯和使用我的程序。 另外我想通過Enter按鈕在Python GUI中選擇Items。控制檯應用程序gui for python

+4

嘗試控制檯UI庫:http://excess.org/urwid/examples.html – Blender

回答

1

看看Python的詛咒庫:

如果你想要一個Python的外殼,那麼你可能想看看什麼像PyFlakes/PyShell或類似的。

+0

我要指出,我需要控制檯應用程序的GUI用戶界面不適合發展。我正在爲小企業開發簡單的會計程序,所以我需要爲用戶提供一個簡單的(類似於Dos)GUI。 –

+0

Urwid(http://excess.org/urwid/)是一個示例。但我不知道如何使用它在Windows 7上。 –

6

如果您使用Windows,您最終需要與win32 console API集成以創建控制檯GUI(也就是Text UI或TUI)。您的選項基本上都是:

  1. 使用curses或坐在它上面,像urwid或npyscreen包寫下您的TUI。要做到這一點,你需要安裝cygwin或PDcurses來使它工作。
  2. 使用類似pywin32的東西直接寫入win32 API。
  3. 使用簡化win32 API的包,比如effbot的控制檯包。

我發現所有上述不滿意,因爲我不想爲Windows安裝第三方二進制文件的所有麻煩,希望我可以在任何地方使用(一個簡單的pip之後安裝)的API,所以我寫了一橫 - 平臺包(asciimatics)來修復它。這個軟件包將所有的麻煩都拿走了,併爲TUI應用程序提供了一個清晰的文檔化API,其中包含a set of widgets

例如,以下是前一個文檔鏈接中引用的聯繫人列表示例代碼的屏幕截圖,其中顯示了一些基本文本和按鈕小部件。

Sample screenshot

+0

我會建議一個什麼asciimatics程序看起來像一個截圖。不一定在你的回答中,但至少在你的文檔頁面上。這聽起來很酷,但我希望在某個地方看到一個例子。 (除非有,我沒有找到它?) –

+1

謝謝。我還沒有爲[gallery](https://github.com/peterbrittain/asciimatics/wiki)創建一個視頻,所以現在在這裏添加了一個屏幕截圖,而不是... –

+0

謝謝,它更冷,然後我想像。做得好!它讓我的終端屏幕保護程序變得恥辱。 –

相關問題