Có một Trình thiết kế GUI cho python không?


107

Có một IDE IDE để lập trình python giống như java có netbeans không?

Tôi muốn một nơi mà chúng ta có thể kéo và thả các hộp và nhãn kiểm tra giống như chúng ta làm trong các thành phần xoay bằng cách sử dụng netbeans hoặc nhật thực.

Hoặc có một tiện ích bổ sung trong cả netbeans hoặc nhật thực không?


Bạn đã xem Trung tâm phần mềm Ubuntu ở một số mục được liệt kê trong Công cụ dành cho nhà phát triển> Python chưa?
Christopher Kyle Horton

4
Cá nhân tôi khuyên bạn nên cố gắng tạo ra thứ gì đó bằng tay theo hướng dẫn, bởi vì nếu bạn không nắm bắt được các yếu tố bạn vẽ tương tác với nhau như thế nào, bạn sẽ khó có thể làm cho các nút hoạt động và như vậy.
Ivo Flipse

1
Tuy nhiên, xin lưu ý rằng, đối với bất kỳ thứ gì không tầm thường, các ứng dụng gtk không sử dụng glade hoặc thứ gì đó tương tự sẽ trông khá xấu xí và phức tạp rất nhanh. Ngay cả khi sử dụng glade, bạn vẫn sẽ có nhiều cơ hội để tìm hiểu về api pygtk.
Stefano Palazzo

Tôi đã bình chọn cho bất cứ điều gì như Visual Studio cho Python?
abdul qayyum

Câu trả lời:


103

Glade Cài đặt glade

Nếu bạn muốn một nhà thiết kế GUI wysiwyg, Glade là lựa chọn tốt nhất của bạn:

  • đầu tiên, cài đặt gladetừ trung tâm phần mềm
  • tạo GUI của bạn, lưu nó dưới dạng, giả sử myapp.glade

    nhập mô tả hình ảnh ở đây

  • Chuyển đến tab tín hiệu và thiết lập cuộc gọi lại của bạn, chẳng hạn nhưon_window1_destroy

  • Trong chương trình python của bạn, hãy nói với GTK để tải các định nghĩa UI

    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()

Sau khi thiết lập mọi thứ, bạn có thể đi thẳng vào hướng dẫn Glade (như Jeremy Kerr đã đề cập trong câu trả lời của mình). Bắt đầu bằng cách tìm hiểu về các tùy chọn và tín hiệu khác nhau.


Mau Cài đặt nhanh

Khi bạn cảm thấy thoải mái với glade, bạn có thể bắt đầu sử dụng nó thông qua Quickly, đây là một bộ chương trình để thực hiện các tác vụ phổ biến trong việc phát triển phần mềm rất dễ dàng. Nó đảm nhiệm việc dịch thuật, lưu trữ cấu hình, đóng gói, tích hợp launchpad bao gồm PPA và nhiều hơn nữa:

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

Bây giờ nhanh chóng tạo ra một dự án lớn với mọi thứ bạn cần đã được thiết lập. Một gui, các tệp dịch, cấu hình thông qua desktopcouch , v.v.

Bạn sẽ thấy nhanh chóng thiết lập một vài cửa sổ (Ứng dụng chính, cấu hình và một đoạn hội thoại) cho bạn. Để bắt đầu chỉnh sửa GUI của bạn:

  • chạy quickly design

    nhập mô tả hình ảnh ở đây

  • Để lấy mã của ứng dụng, hãy chạy quickly edit

  • Đi đến HelloWorldWindow.pytập tin

  • Bây giờ bắt đầu thêm xử lý tín hiệu và logic.

Cuối cùng, để chạy ứng dụng của bạn, gõ quickly run.

Tại thời điểm này, bạn có thể truy cập tài liệu PyGTK để tìm hiểu về các tín hiệu, chữ ký của trình xử lý của họ, các phương thức của các vật dụng khác nhau, v.v.


Xem thêm, một số câu hỏi liên quan:


2
Câu trả lời này rất hay, nó sẽ trở thành một chuẩn mực cho những người khác :)
Nathan Osman

1
Tôi tìm thấy glade một RAD khủng khiếp và lỗi.
renatov

49

Nhà thiết kế Qt

PyQt đi kèm với Trình thiết kế của Qt , một trình soạn thảo GUI đồ họa khá gọn gàng, nếu bạn thích viết ứng dụng của mình với khung Qt.

Ảnh chụp màn hình Qt Designer

Người tạo Qt

IDE mới của Qt có hỗ trợ toàn diện cho cả các tiện ích giải mã (như nhà thiết kế ở trên) và các ứng dụng QtQuick, tốt hơn cho các ứng dụng nhẹ, lỏng, cảm ứng (ví dụ: ứng dụng máy tính bảng / thiết bị di động)


23

Bạn có sau một IDE đầy đủ (nghĩa là trình soạn thảo mã, môi trường thời gian chạy, công cụ bố trí UI) hay chỉ là một tiện ích để tạo UI?

Nếu đó là một môi trường lập trình đầy đủ mà bạn đang theo đuổi, hãy xem bộ công cụ Quickly .

Nếu bạn chỉ muốn thiết kế giao diện, bạn có thể sử dụng trình thiết kế 'glade' để bố trí giao diện của mình bằng các tiện ích GTK, sau đó tải định nghĩa UI đó vào bất kỳ chương trình python nào. Có Hướng dẫn lập trình GUI GTK + và Glade3 (với cả ví dụ Python và C).


14

Eric IDE Cài đặt eric

Hãy thử với Eric IDE. Tôi nghĩ rằng IDE tốt nhất cho cả Python và Qt4.

Eric IDE


2
Tại sao điều này bị hạ thấp? Eric là một GUI Python đẹp tích hợp phát triển QT. Nó có thể thiết kế GUI (sử dụng QT Designer) và thậm chí nó còn biên dịch các tệp .ui thành python (không cần sử dụng dòng lệnh). Đó là một Eclipse hoặc Visual Studio cho pyQt. Nó quá nặng đối với sở thích của tôi, nhưng nó là một lựa chọn thú vị cho những người khác.
Javier Rivera

@JavierRivera: có thể bởi vì điều này trông giống như một IDE, không phải là một nhà thiết kế GUI.
Jeremy Kerr

8

wxFormBuilder

Nó cũng phụ thuộc vào bộ công cụ widget mà bạn muốn sử dụng. Tôi thích wxWidgets với python, wxPython .

Vì vậy, sở thích của tôi để xây dựng GUI là wxFormBuilder , nó có thể được chấp nhận từ PPA sau:

Nó có tính năng kéo và thả các vật dụng đơn giản vào một khung vẽ và bạn có thể nhanh chóng chuyển sang tab mã để xem những gì nó đã tạo ra, mà mắt tôi không được kiểm soát là sạch sẽ và không bị lộn xộn. Như tên trên hộp thiếc nói rằng nó là một trình xây dựng biểu mẫu, đó là những gì nó chuyên về. Vì vậy, đừng mong đợi phát triển một dự án đầy đủ với nó, tuy nhiên nếu bạn muốn giữ thiết kế biểu mẫu tách biệt với mã phân tích thì nó sẽ làm làm tốt lắm


1
Phiên bản Ubuntu stock không thể tạo mã Python vì một số lý do. Tôi hy vọng phiên bản PPA không có vấn đề đó.
Christoph

1
có phiên bản PPA có thể tạo mã python.
Christoph

3

Có một đứa trẻ mới ở thị trấn: Camelot . Nó được thiết kế để xây dựng GUI thực sự nhanh chóng. Nó giúp bạn tập trung vào ứng dụng của bạn, thay vì mã GUI. Những người bảo trì nói

Camelot cung cấp các thành phần để xây dựng các ứng dụng kinh doanh trên Python, SQLAlchemyQt . Nó được lấy cảm hứng từ giao diện quản trị Django. Bạn có thể sử dụng Camelot để phát triển cả ứng dụng kinh doanh đơn giản và phức tạp với tốc độ dọc.

Khung này đã được trình bày nhiều lần trong các cuộc họp trăn quốc tế. Ưu điểm của nó là

Lợi thế nhà phát triển

  • Trên chất lượng cao và công nghệ đã được chứng minh

  • Lượt xem bị ràng buộc với mô hình dữ liệu mà không cần viết mã

  • Có thể tùy chỉnh thông qua khung Hành động

  • Tài liệu từ hướng dẫn giới thiệu đến in báo cáo

  • Warpspeed để giải pháp có thể triển khai

Ưu điểm người dùng

  • GUI đáp ứng và quen thuộc

  • Trình chỉnh sửa và kiểm soát chất lượng cao

  • Hàng tấn các chức năng được xây dựng như nhập, xuất, in, sao lưu và khôi phục

  • Đã ánh xạ vào quy trình kinh doanh

Kiểm tra http://www.python-camelot.com/ để biết thêm thông tin, bản trình bày, video youtube và hơn thế nữa.

từ chối trách nhiệm: Tôi đã thấy điều này trong hành động và đã nói chuyện với các nhà phát triển. Tôi có thể bị thiên vị, nhưng tôi thành thật tin rằng đây là phần mềm tuyệt vời.


2

Phát triển sắc nét

Ảnh chụp màn hình SharpDevelop

SharpDevelop dành cho phát triển ứng dụng dựa trên .Net Framework. Nó hỗ trợ IronPython và có trình thiết kế GUI cho Ứng dụng WinForm, Silverlight, WPF. Mặc dù Visual Studio cũng có nhiều trình thiết kế GUI khác nhau cho IronPython, tuy nhiên nó không có GUI cho WinForm.


1

không ai đề cập đến công cụ có khá nhiều sử dụng trong các ngôn ngữ khác và có thể được biết bởi người dùng bắt đầu - Eclipse có quan điểm cho python gọi là PyDev.


Eclipse có thể xây dựng GUI không? Ngay cả trong Java?
Eric Wilson

@FarmBoy: vâng, nó có thể.
RolandiXor

1
Phối cảnh pydev có một nhà thiết kế GUI không?
Stefano Palazzo


-4

IDE Python tốt nhất từng có là PyCharm. Nhưng nó không miễn phí và nó không có trình thiết kế GUI. http://www.jetbrains.com/pycharm/index.html


8
OP đặc biệt đề cập rằng anh ấy muốn một nhà thiết kế GUI.
bốn giờ

2
Trên thực tế, phiên bản cộng đồng là miễn phí (4.5) và công bằng mà nói, không có câu trả lời nào khác thực sự cung cấp IDE xây dựng GUI, họ chỉ đề cập đến một nửa giải pháp đã được khắc phục --- và đối với hồ sơ, PyCharm là một đề nghị tốt miễn là bạn biết cách sử dụng nó (và vâng, nó có thể được sử dụng với các trình tạo GUI giống như những người khác có thể) - bạn có thể muốn thêm ghi chú đó vào câu trả lời của mình nếu bạn muốn khôi phục một số đại diện bị mất
osirisgothra
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.