تطوير التطبيقات باستخدام Python 3 و Glade و GTK + 3 على Windows

مقدمة

في GNU / Linux تطوير التطبيقات باستخدام Python 3 و Glade و GTK + 3 سهل للغاية ، تأتي الحزم افتراضيًا في معظم التوزيعات.

من خلال فرجة في الغابة يمكننا إنشاء واجهات مستخدم بسرعة وسهولة ثم استخدامها مع Python. لتحقيق هذا تستخدمه PYGObject بفضل نظام الاستبطان الذي تقدمه جنوم ، والذي يجعل تطوير التطبيقات السريعة (RAD) أسهل بكثير ؛ من الممكن أيضًا استخدام واجهاتنا التي تم إنشاؤها باستخدام Glade من لغات البرمجة الأخرى.

تحدث المشكلة عندما نريد استخدام تطبيقاتنا في Microsoft Windows ، لأنه حتى وقت قريب لم تكن حزم هذا النظام موجودة رسميًا.

مع هذا البرنامج التعليمي ، من المفترض أن تعمل التطبيقات التي تم إنشاؤها في GNU / Linux باستخدام Python 3 و GTK + 3 دون مشاكل في Windows.

المتطلبات

  • بيثون 3.3
  • Gtk + 3
  • Glade 3.14 أو أعلى (مصمم واجهة المستخدم الرسومية)
  • pygobject

التثبيت على Windows

سيبدأ بإنشاء مجلد يسمى نظام البرمجيات أو أي خيار آخر من تفضيلاتك وسنوفر فيه جميع الحزم التي تم تنزيلها.

تنزيل حزم التثبيت

تنزيل Python 3.3

يمكن تنزيله من صفحة Python الرسمية www.python.org

قم بتنزيل مثبت Python

قم بتنزيل مثبت Python

بالضغط على الرابط (برنامج Windows Installer) سيتم تنزيل مثبت Python.

تحميل Glade

موقع التنزيل: Glade.gnome.org

كل من إصدارات Python و Glade هي 32 بت ، لكنها تعمل بشكل لا تشوبه شائبة على أنظمة 64 بت

صفحة Glade

صفحة Glade

تنزيل PyGObject

موقع التنزيل: https://wiki.gnome.org/PyGObject

يجب علينا تنزيل الإصدار لـ GTK + 3

PYGObject

PYGObject

PyGObject في كود جوجل

PyGObject في كود جوجل

تركيب الحزم

حسنًا حتى هذه النقطة ، لدينا بالفعل جميع الحزم التي تم تنزيلها في المجلد نظام البرمجيات وبما أننا قمنا بتنزيل كل حزمة ، سنبدأ أولاً بتثبيت Python.

الحزم التي تم تنزيلها

الحزم التي تم تنزيلها

تثبيت بايثون

التثبيت بسيط للغاية ، وسوف يرشدنا المعالج خلال العملية ؛ نترك جميع الخيارات محددة بشكل افتراضي.

برنامج تثبيت بايثون

برنامج تثبيت بايثون

كما هو موضح في الصورة ، يتم تثبيت Python في المجلد ج: \ Python33 \ بشكل افتراضي ، نتركه كما هو ونتابع التثبيت.

مجلد تثبيت Python

مجلد تثبيت Python

في هذه المرحلة من التثبيت نختار الخيار أضف python.exe إلى المسار، لغرض أنه عندما نقوم بتشغيل مترجم Python ، يتم تنفيذه دون الحاجة إلى إضافته إلى مسار النظام يدويًا.

أضف Python إلى مسار النظام

أضف Python إلى مسار النظام

ثم ننتهي من التثبيت وسيتم تثبيت Python على نظامنا.

تركيب جليد

لا يمثل تثبيت Glade تعقيدًا كبيرًا ، فنحن نقوم بتشغيل برنامج التثبيت ونتبع خطوات المعالج.

تثبيت جليد

تثبيت جليد

تثبيت PyGObject

لقد قمنا بتنزيل الحزمة pygi-aio-3.4.2rev11.7z، تتضمن هذه الحزمة مكتبات PyGObject لـ Python 3.3 و GTK + 3 لنظام التشغيل Windows ، والتي يتم ضغطها باستخدام 7 زيب، نقوم بفك ضغطه وسيكون لدينا مجلد بالمحتوى التالي:

محتويات المجلد pygi-aio-3.4.2rev11.7

محتويات المجلد pygi-aio-3.4.2rev11.7

الآن نقوم بنسخ المجلد جتك a C: \ Python33 \ Lib \ site -packs حيث يتم تثبيت حزم الطرف الثالث الخاصة ببايثون.

انسخ مجلد gtk

انسخ مجلد gtk

مجلد Gtk في C: \ Python33 \ Lib \ site -packs

مجلد Gtk في C: \ Python33 \ Lib \ site -packs

نعود إلى مجلدنا بيجي- aio-3.4.2 ونفتح المجلد py33 لإصدار Python وهو 3.3

محتويات مجلد py33

محتويات مجلد py33

نختار كل المحتوى ملف py33 ونقوم بنسخه مرة أخرى في المجلد C: \ Python33 \ Lib \ site -packsسيُطلب منا الاختلاط والكتابة ، نجيب بالإيجاب. محتويات المجلد حزم الموقع سيكون كما هو موضح في الصورة التالية:

انسخ محتويات المجلد py33 إلى C: \ Python33 \ Lib \ site -pack

انسخ محتويات المجلد py33 إلى C: \ Python33 \ Lib \ site -pack

التحقق من التثبيت الصحيح لـ PyGobject و GTK + 3

للتحقق من أن التثبيت كان صحيحًا ، نفتح Python IDLE ونستورد مكتبات GTK + 3 وإذا لم يكن لدينا أي رسائل خطأ ، فسيتم كل شيء بشكل صحيح.

from gi.repository import Gtk

تم تثبيت PyGobject و GTK + 3 بشكل صحيح

تم تثبيت PyGobject و GTK + 3 بشكل صحيح


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   خواكين قال

    ولماذا GTK؟ ألن يكون من الأفضل التطوير في كيو تي؟ إلى جانب كونه متعدد المنصات ، ويقول الكثير إنه المستقبل

    1.    ارتوس قال

      حسنًا ، مكتبتا الرسوم الكبيرتان على سطح مكتب GNU / Linux هما GTK و QT ، كل واحدة تختار المكتب الذي تفضله. لا يوجد سبب للقتال.

      الفرق بين GTK و QT هو أن هذا الأخير هو إطار عمل ، جيد جدًا بالفعل ، ولكن كونه إطار عمل فإنه يستهلك المزيد من الموارد.

      على سبيل المثال Mozilla Firefox و Google Chrome و LibreOffice وما إلى ذلك طويلة مصنوعة من GTK ؛ هذا لا يعني أنه أفضل من QT ، يجب على كل شخص اختيار ما يناسب تفضيلاته واحتياجاته ، ولا نريد إجراء مناقشة حوله.

      1.    بانديف 92 قال

        جوجل كروم من الإصدار 33 ، اترك gtk.

  2.   رولو قال

    ولماذا الشرح للويندوز وليس لينكس

    1.    جيرمان قال

      هل يرجع ذلك إلى أن كل شيء في Linux معبأ بالفعل وفي المستودعات الرسمية لكل توزيعة؟ في Fedora ، على سبيل المثال ، لدي بالفعل Python 3 و Gtk + 3 و PyGobject مثبتة بشكل افتراضي. إذا كنت تريد Glade ، فهي مجرد "yum install glade". الحق سهلة؟ 🙂

    2.    ارتوس قال

      لأنه كما يقول جيرمان ، بالنسبة لتوزيعات جنو / لينكس ، فهي مُعبأة بالفعل ومن السهل جدًا تثبيتها ؛ على سبيل المثال ، فإن تثبيت glade على دبيان بسيط للغاية:
      الكفاءة تثبيت glade

  3.   مارسيلو قال

    إذا كنت أرغب في استخدام Python 2.7 ، فهل ستكون الخطوات كما هي؟
    من الواضح أن تثبيت Python 2.7 32 بت (حتى إذا كنت تستخدم نظام تشغيل 64 بت) وبدلاً من مجلد py33 ، فإن الإصدار 2.7 سيذهب. هل ستنجح؟
    غراسياس.

    1.    ارتوس قال

      حسنًا ، نعم ، إذا كانت لديك مشكلة ، فاترك لي تعليقًا.

      الحظ.

      1.    مارسيلو قال

        شكرًا ، لقد جربتها والآن تعمل "Hello world" بالنسبة لي.

        أرى ما إذا كان بإمكاني الحصول على أي برنامج تعليمي pyGTK3 جيد أو ما يسمى وأي مشاكل ، تحذير.

        1.    ارتوس قال
          1.    مارسيلو قال

            كارامبا! شكرا جزيلا!

          2.    مارسيلو قال

            اختبار GTK3 مع Python 2.7 على Windows واتباع البرنامج التعليمي. تعمل جميع البرامج حتى الآن بالنسبة لي ، باستثناء البرنامج الموجود في الفصل 14 (IconView -> https://python-gtk-3-tutorial.readthedocs.org/en/latest/iconview.html)

            يعطيني الخطأ التالي:
            تتبع (آخر مكالمة أخيرة):
            ملف "C: \ Users \ User \ Desktop \ test.py" ، السطر 24 ، في
            win = IconViewWindow ()
            ملف "C: \ Users \ User \ Desktop \ test.py" ، السطر 19 ، في __init__
            pixbuf = Gtk.IconTheme.get_default (). load_icon (icon، 64، 0)
            ملف "C: \ Python27 \ lib \ site -pack \ gi \ types.py" ، السطر 47 ، في الوظيفة
            إرجاع info.invoke (* args ، ** kwargs)
            GError: رمز "gtk-cut" غير موجود في السمة

            لقد جربته مع أيقونات أخرى ولم يعمل أيضًا. هل أحتاج إلى تثبيت موضوع؟ شكرا منذ الآن.

          3.    مارسيلو قال

            ولا المثال 19. السحب والإفلات.

            الوظيفة التي تستدعي في كلتا الحالتين وهذا هو المكان الذي أحصل فيه على خطأ هو:

            pixbuf = Gtk.IconTheme.get_default (). load_icon (icon_name، 16، 0)

            لا يمكنني العثور على الرمز ، ولكن في أمثلة أخرى يمكنك استخدامها. إنه يعطيني خطأ فقط عندما أرغب في استخدامه مع هذه الوظيفة (هنا يمكن استبدال icon_name بقيمة مثل Gtk.STOCK_CUT أو أي شيء ويعطي نفس الخطأ تمامًا).

          4.    مارسيلو قال

            أستمر في الحديث مع نفسي. ما يناسبني في الأمثلة الأخرى هو تحميل الصور على الأزرار. لا يمكنني تحميل الرموز بالوظيفة التي تأتي في المثالين اللذين قدمتهما سابقًا.

          5.    ارتوس قال

            أعتقد أن الخطأ واضح:
            GError: رمز "gtk-cut" غير موجود في السمة

            يبدو أن هذا الرمز غير متوفر ، استخدم رمزًا آخر. ربما لم يقم مشرف الحزمة بتضمين أيقونات السمات أو لا يمكن العثور عليها في المسار الافتراضي ، استخدم توزيعة GNU / Linux وتأكد من استمرار ظهور الخطأ نفسه.

            فيما يتعلق بالسؤال 19 ، يبدو أنه مرتبط بإصدار PyGobject ، في الجزء العلوي من الوثائق التي تقول:

            ملاحظات
            إصدارات PyGObject = 3.0.3 مطلوبة لكي تعمل الأمثلة التالية.

            الإصدار الذي لديك هو 3.0 ، جرب توزيعة GNU / Linux ؛ ثم يتعين علينا انتظارهم لتحديث الحزمة (لنظام التشغيل Windows) أو في أي حال يمكنك تجميعها بنفسك.

            تحياتي والمضي قدما.

          6.    مارسيلو قال

            في Ubuntu ، تعمل جميع الأمثلة التعليمية بشكل مثالي بالنسبة لي. على نظام Windows ، ما زال لا يعمل. سأضطر إلى الانتظار. آخر لا يمشي هو مثال Spinner ، الذي لا يفعل الرسوم المتحركة. تحياتي وشكر.

  4.   yoshua قال

    لقد اتبعت البرنامج التعليمي للتثبيت وقمت بتثبيت كل شيء خطوة بخطوة.
    وتنفيذ الكود التالي:
    من gi.repository import Gtk

    فئة المهرجان
    def __init __ (ذاتي):
    filename = "/ data / dam / Python exemplars / Saudoform"
    المُنشئ = Gtk.builder ()
    منشئ .add_from_file (اسم الملف)
    # القاموس حيث نربط سينيس بالأحداث
    سينيس = {
    «ClickedAccept»: self.clic_boton،
    "ActivateTextCadro": self.clic_boton،
    "DestroyFiestra": Gtk.main_quit

    }
    constructor.connect_signals (سينيس)
    # نحصل على مرجع إلى واصف XML لنتمكن من الوصول إليه
    self.label = self.widgets_widget ("التسمية")
    self.cadroTexto = self.widgets_widget ("CadroTexto")

    def button_click (ذاتي ، أداة):
    text = self.cadroTexto.get_text ()
    self.label.set_text (نص "wave٪ s"٪)

    إذا كان __name__ == »__ الرئيسي__»:
    FiestraPrincipal ()
    Gtk.Main ()

    أحصل على هذه الإجابة:
    تتبع (آخر مكالمة أخيرة):
    ملف «C: / Users / admin / Google Drive / test / SaudoForm.py» ، السطر 3 ، بتنسيق
    من gi.repository import Gtk
    ملف "C: \ Python33 \ lib \ site -pack \ gi \ __ init__.py" ، السطر 27 ، في
    من ._gi import _API، Repository
    خطأ استيراد: فشل تحميل DLL:٪ 1 ليس تطبيق Win32 صالحًا.

    شخص ما يعرف ما هي المشكلة ، أو ما قد يكون الحل المحتمل
    شكرا جزيلا.

  5.   يسوع قال

    مثير للإعجاب. لقد انتهيت من التثبيت في نظام Linux ، لكن شرح نظام التشغيل windows جيد ، والآن لدي كلاهما. 😉

  6.   رافا كارمونا قال

    إنه أمر مضحك على Windows 7 32 بت لأول مرة.
    في نظام التشغيل Windows 7 64 بت ، لا يمكنني تشغيله ، أحصل عليه دائمًا ؛
    >>> من gi.repository import Gtk
    تتبع (آخر مكالمة أخيرة):
    ملف «» ، السطر 1 ، بتنسيق
    ملف "C: \ Python33 \ lib \ site -pack \ gi \ __ init__.py" ، السطر 27 ، في
    من ._gi استيراد _API
    خطأ استيراد: فشل تحميل DLL: لم يتم العثور على العملية المحددة.

    لقد جربته على أي حال ، لقد فقدت بالفعل وهم تثبيته.

    1.    ارتوس قال

      سترى أن مكتبات 64 بت لا تزال بها بعض الأخطاء ، يرجى تثبيت الإصدار 32 بت من كل من Python و GTK + حتى لا تواجهك مشاكل.

      يجب ألا تفقد الوهم أبدًا

  7.   ريتشارد قال

    مرحبًا ، أنا أعمل مع python + gtk3 ، إنه جيد جدًا الآن أنا في مشكلة صغيرة أريد تغيير الرمز إلى النموذج الخاص بي (النافذة) في هذه الحالة ويمكنني تغييره ، شكرًا مقدمًا ، تحياتي

  8.   جورس قال

    نشر مقاطع فيديو بسيطة عن كيفية البرمجة في gtk + 3 وتحية للبرامج التعليمية البسيطة

  9.   جوزيه قال

    تعليمي ممتاز. أشكركم جزيل الشكر على ما تبذلونه من جهد لك. مع تحياتي.

  10.   جكميلو 1030 قال

    لقد قمت بكل الخطوات وعندما ذهبت للثقة في التثبيت ، حصلت على هذا الخطأ.

    تتبع (آخر مكالمة أخيرة):
    ملف «» ، السطر 1 ، بتنسيق
    من gi.repository import Gtk
    خطأ في الاستيراد: لا توجد وحدة باسم "gi"