كيف يمكنني تحسين مظهر واجهة المستخدم الرسومية Perl/TK ضمن Perl 5.004؟

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

سؤال

لدي تطبيق مصمم للعمل على أنظمة التشغيل Windows وLinux وSolaris والذي يستخدم Perl/TK واجهة المستخدم الرسومية.نظرًا للقيود، فإننا نقتصر على لغة Perl/TK فقط.علاوة على ذلك، نحن يقتصرون على القديم Perl/Tk إصدار، 5.00404.

أرغب في العمل ضمن هذه القيود لجعل واجهة المستخدم الرسومية تبدو جميلة وحديثة قدر الإمكان.

هل هناك أي موارد على شبكة الإنترنت تحتوي على مخططات لتصميم المعارف التقليدية (للأزرار، والإطارات، والألوان، وما إلى ذلك) يمكن أن تساعدني في هذا المسعى؟


أنا أيضًا أبحث عن نصائح للتحديث مثل تلك التي وجدتها هنا:

إذا وجدت أن تطبيقات Tk الخاصة بك تبدو قبيحة بعض الشيء على الأنظمة المستندة إلى X، فحاول إضافة الأسطر التالية إلى الجزء العلوي من البرنامج النصي الخاص بك:

$mw->optionAdd("*font", "-*-arial-normal-r-*-*-*-120-*-*-*-*-*-*");
$mw->optionAdd("*borderWidth", 1);
هل كانت مفيدة؟

المحلول

وحاول استخدام الصور بدلا من العناصر الزر، ثم هل يمكن أن يكون كل ما النمط الذي تريد والخطوط يمكن يخبز في هذا وستعمل الى حد كبير أي عنصر فيها محتويات ليست حيوية - بما في ذلك الخلفيات على أجزاء من هذا القبيل. منح انها مزيد من العمل لكنه لا يحل المشكلة، وخاصة إذا كان لديك الفنان المختص في مجموعة المشروع.

نصائح أخرى

هل يمكن استخدام تاكا محرك موضوع لإعطاء الخاص بك app وتبدو أفضل.

وعن طريق optionAdd إلى قرص التخلف من خلال قاعدة البيانات الخيار هو بداية معقولة. خيط حول هذا ويمكن الاطلاع على:

http://tcl.projectforum.com/tk/221

وتحميل griffin.kit من هناك، استخدم أداة SDX لبسط عليها وتحديد griffin.tcl للحصول على مجموعة جيدة من إعدادات الخيار.

http://wiki.tcl.tk/3411 عن أداة SDX.

نظرًا لأن خلفية Tk::Entry وTk::Text في Linux باللون الرمادي، فإنني سأستخدم أيضًا السطرين التاليين.

$mw->optionAdd( '*Entry.background',   'snow1' );
$mw->optionAdd( '*Text.background',    'snow1' );

استبدل "snow1" باللون الذي تختاره.يمكنك أيضًا استخدام التمثيل السداسي (RGB) للألوان مثل "#ff9696".

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

ويجب التحقيق في ما إذا كانت TKX هو خيار لك. انها ليست متوافقة تماما مع بيرل / تاكا، ولكن API قريب جدا. انها جسر بين بيرل وتى سى ال / تاكا، لذلك يمكن استخدام كافة الميزات تى سى ال / تاكا الحديثة (مثل بلاط)، في حين لا تزال تواجه منطق التطبيق مشفرة في بيرل. عدد غير قليل من المرافق الرسومية الخاصة الخاصة ActiveState استخدام TKX، وكانت النتائج جيدة المظهر إلى حد ما.

<الفرعية> (المصدر: activestate.com )

وبيرل 5.00404 هو القديم بشكل لا يصدق، على الرغم من. يدعي شعبة نظم TKX تعتمد على Perl≥5.008 ... أنا لم يكن لديك ما يكفي من بيرل القديم لمعرفة مدى دقة هذا هو.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top