كمنظمة مبتدئ، أين يجب أن أذهب إذا أردت إنشاء برنامج GUI صغير؟ [مغلق

StackOverflow https://stackoverflow.com/questions/2439520

سؤال

أنا مبتدئ مع القليل من الخبرة الكتابة في Basic، Python،، من كل شيء، Smidgeon من المجمع (كجزء من لعبة ROM ROM). أردت إنشاء أداة صغيرة لتعديل قيم HEX في نقاط معينة، في ملف معين، من شأنها واجهة GUI.

ما أبحث عنه هو القدرة على إنشاء برنامج GUI صغير، وأستطيع توزيع كإكس (أو، على الأقل دليل مستقل). لست حريصا على فكرة لغات .NET، لأنني لا أريد إجبار الأشخاص على تنزيل حزمة Framework ضخمة. لدي حاليا بيثون مع منشئ الخمول و Boa الذي تم إعداده، ويتم تشغيل التطبيق هناك. لقد حاولت البحث عن معلومات حول تجميع تطبيق Python يعتمد على WxWidgets، لكن نتائج البحث والمعلومات التي وجدتها مربكة، أو غير مفهومة تماما تماما.

أسئلتي هي:

  1. هي بيثون لغة جيدة لاستخدامها لهذا النوع من المشروع؟
  2. إذا كنت تستخدم Py2exe، فسيتم بالفعل تضمين WxWidgets؟ أو هل سيتعين على مستخدمي تثبيت WxWidgets بطريقة أو بأخرى على أجهزتهم؟ هل أنا في التفكير في PY2EXE فقط تنتج دليلا مستقلا، "DIST"، يحتوي على الملفات الضرورية للمستخدم فقط انقر نقرا مزدوجا فقط وتشغيل التطبيق؟
  3. إذا كان البرنامج يعتمد فقط على Tkinter للأشياء واجهة المستخدم الرسومية، فسيتم إدراج ذلك في EXE PY2EXE؟ إذا كان الأمر كذلك، فهل أي بناة / واجهة المستخدم الرسومية "البصرية" ل Python مع Tkinter فقط؟

شكرا لوقتك،

JBMK.

هل كانت مفيدة؟

المحلول

كنت أفضل حالا في التفكير / قول / googling wxpython (وليس wxwidgets)، لأن wxpython هو غلاف الثعبان ل wxwidgets c ++.

1.) بيثون هي لغة جيدة لهذا. إذا كنت تستهدف النوافذ فقط، فأنا ما زلت أفعل ذلك في .NET / C # رغم ذلك. إذا كنت تريد عبر منصة، Python / Wxpython على طول الطريق.

2.) نعم، يجب تضمين ملفات WXPYTHON في Dist Directory. سيكون عليك تثبيت Wxpython بالطبع على جهاز التطوير الخاص بك. يرى هنا لبعض التعليمات حول كيفية بناء. PY2EXE تقوم بإنتاج دليل واحد مع كل ما تحتاجه لتشغيل البرنامج. سوف تعطيك exe يمكنك النقر المزعج.

3.) أنا لم أستخدم مطلقا من تكسينتر بيثون مع PY2EXE، لكنني لا أستطيع أن أرى لماذا لن يعمل على طول خطوط Wxpython.

يجب أن تضع في اعتبارك أن الدليل القابل للتوزيع في النهاية سيكون 10s من MEGS (PY2EXE حزم مترجم الثعبان والمكتبات الأخرى اللازمة لك التطبيق). ليس تماما مثل .NET Framework، ولكن لا يعمل الجميع تقريبا بالفعل الآن؟

نصائح أخرى

إذا كنت لا تخشى تعلم لغة جديدة، فكر في TCL / TK. السبب في ذكر ذلك هو آلية التوزيع المتفوقة في TCL من TCL والتي تجعل من السهل حقا أن تختتم ملف واحد exe يتضمن كل ما تحتاجه - وقت تشغيل TCL / TK، البرنامج، الرموز، ملفات الصوت، إلخ . داخل نظام ملفات الظاهري المضمن. ونفس التقنية التي تستخدمها لأعمال منصة واحدة للجميع. ليس لديك لاستخدام أدوات مختلفة لمنصات مختلفة.

إذا كانت تلك المؤثة لك، Google for Starpack (ملف واحد يحتوي على كل شيء)، Starkit (تطبيق منصة مستقلة) و TCLKIT (وقت التشغيل المحدد من النظام الأساسي).

TCL / TK ليس كوب الشاي للجميع، ولكن ككلغة غوي للزعم، من الصعب التغلب على IMO. إذا كان لديه كعب أخيل هو أنه لا يوجد لديه دعم الطباعة. من المستغرب، على الرغم من أن عدد الخمر لا يحتاج إلى دعم الطباعة هذه الأيام.

لمشروع Gui متعدد اللاعبين، أوصي بك مكتبات كيو تي و pyqt..

لقد استخدمتها مؤخرا للحصول على تطبيق صغير وأحببت يحتوي QT على مصمم GUI رائع ونموذج إشارة PYQT عملت بالنسبة لي.

يمكنك نشر تطبيقك على OSX و Windows باستخدام Py2app و Py2exe؛ هنا رابط مفيد يظهر لك كيف ونتائج الحجم المحتملة.

  1. سوف python تناسب احتياجاتك.
  2. Wxwidgets و python هي أشياء مختلفة تماما. أعتقد أنك تعني Wxpython، وهي مجموعة أدوات واجهة المستخدم الرسومية لبيتثون. لست متأكدا مما إذا كان PY2EXE سيتضمن ذلك، كما لم أستخدم Py2exe أبدا - أقوم ببناء الحزم وتمعياتها يدويا.
  3. بالتأكيد سوف تتشمل tkinter. يمكنني استخدام Tkinter قليلا ويعمل جيدا بما فيه الكفاية.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top