نصائح لتطبيقات دلفي متعدد القرار

عند التصميم نماذج في دلفي، غالبًا ما يكون من المفيد كتابة الرمز بحيث يبدو التطبيق الخاص بك (النماذج وجميع الكائنات) متشابهًا بشكل أساسي بغض النظر عن دقة الشاشة.

أول شيء تريد تذكره مبكرًا في مرحلة تصميم النموذج هو ما إذا كنت ستسمح بقياس النموذج أم لا. ميزة عدم التوسع هي أنه لا يوجد شيء يتغير في وقت التشغيل. عيب عدم التحجيم هو ذلك لا شيء يتغير في وقت التشغيل (قد يكون النموذج الخاص بك صغيرًا جدًا أو كبيرًا جدًا بحيث يتعذر قراءته على بعض الأنظمة إذا لم يتم قياسه).

إذا كنت لن تقوم بتغيير حجم النموذج ، فقم بتعيينه تحجيم إلى خطأ. خلاف ذلك ، قم بتعيين الخاصية إلى True. أيضا ، تعيين لف تلقائي إلى False: العكس يعني عدم تغيير حجم إطار النموذج في وقت التشغيل ، وهو ما لا يبدو جيدًا عندما تكون محتويات النموذج فعل قم بتغيير المقاس.

اعتبارات مهمة

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

قم بتعيين النموذج

instagram viewer
موضع الملكية لشيء آخر غير صمم، الذي يترك النموذج حيث تركته في وقت التصميم. ينتهي هذا عادةً بعيدًا جهة اليسار على شاشة مقاس 1280x1024 - ويغلق تمامًا على شاشة 640 × 480.

لا تجمع عناصر التحكم في النموذج - اترك 4 بكسل على الأقل بين عناصر التحكم بحيث لا يظهر تغيير بكسل واحد في مواقع الحدود (بسبب التحجيم) كعناصر تحكم متداخلة.

للتسميات ذات الخط الواحد اليسار أو حسنا محاذاة ، تعيين تغيير الحجم تلقائيًا إلى صحيح. خلاف ذلك ، قم بتعيين تغيير الحجم تلقائيًا إلى خطأ.

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

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

كن حذرًا عند فتح مشروع في IDE بقرارات مختلفة. الاستمارات بكسل سيتم تعديل الخاصية بمجرد فتح النموذج ، وسيتم حفظها في سوق دبي المالي إذا قمت بحفظ المشروع. من الأفضل اختبار التطبيق عن طريق تشغيله بشكل مستقل وتعديل النموذج بدقة واحدة فقط. التحرير بدرجات دقة وأحجام خطوط مختلفة يدعو إلى انحراف المكونات ومشاكل التحجيم. تأكد من تعيين الخاص بك بكسل لجميع النماذج الخاصة بك إلى 120. يتم تعيينه افتراضيًا إلى 96 ، مما يسبب مشاكل في التحجيم بدقة أقل.

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

بشكل عام ، ليس من الضروري تصميم النماذج بأي دقة معينة ، ولكن من المهم أن تراجعها المظهر بدقة 640 × 480 بخطوط كبيرة وصغيرة ، وبدقة عالية مع خطوط صغيرة وكبيرة ، قبل تحريرها تطبيقك. يجب أن يكون هذا جزءًا من القائمة المرجعية لاختبار توافق النظام المعتاد.

انتبه جيدًا لأي مكونات تكون في الأساس سطر واحد TMemos—اشياء مثل TDBLookupCombo. يعرض عنصر تحكم التحرير متعدد الأسطر في Windows دائمًا أسطرًا كاملة من النص فقط - إذا كان عنصر التحكم قصيرًا جدًا لخطه ، أ TMemo سوف تظهر شيئا على الإطلاق (أ تميت سوف تظهر النص المقصوص). بالنسبة لهذه المكونات ، من الأفضل جعلها أكبر عددًا من البكسلات أكبر من أن تكون بكسل واحدًا كبيرًا جدًا ولا تعرض أي نص على الإطلاق.

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

المراسلين والمحاذاة والقيود: جهة خارجية VCL

بمجرد أن تعرف ما هي المشاكل التي يجب وضعها في الاعتبار عند قياس نماذج دلفي على مستويات دقة شاشة مختلفة ، فأنت مستعد لبعضها الترميز.

عند العمل مع دلفي الإصدار 4 أو أعلى ، تم تصميم العديد من الخصائص لمساعدتنا في الحفاظ على شكل وتخطيط عناصر التحكم في النموذج.

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

استعمال القيود لتحديد الحد الأدنى والحد الأقصى للعرض وارتفاع التحكم. عندما تحتوي القيود على قيم قصوى أو دنيا ، لا يمكن تغيير حجم عنصر التحكم لخرق تلك القيود.

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

الإجراء ScaleForm
(و: TForm ؛ ScreenWidth ، ScreenHeight: LongInt)؛
ابدأ
F.Scaled: = صحيح ؛
F.AutoScroll: = False؛
موقف: = poScreenCenter ؛
فونت. الاسم: = 'ارييل' ؛
إذا (الشاشة. العرض <> عرض الشاشة) ثم ابدأ
F. ارتفاع: =
LongInt (F.Height) * LongInt (الشاشة. ارتفاع)
div ScreenHeight؛
F. العرض: =
LongInt (F.Width) * LongInt (الشاشة. عرض)
div شاشة العرض ؛
F.ScaleBy (الشاشة. العرض ، عرض الشاشة) ؛
النهاية؛
النهاية؛