كيفية الحصول على مدى نص ريتشيديت في دلفي

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

  •  15-09-2020
  •  | 
  •  

سؤال

هل يعرف أحد كيفية الحصول على عرض وارتفاع النص في عنصر تحكم Trichedit، بنفس الطريقة التي ستستخدم فيها TextWidth و Textaltight على Tcanvas؟

السبب في أنني بحاجة إلى معرفة هذا القيام بذلك، هل لدي ريتشيديت على شكل غير مرئي أقوم بنسخ محتوياته إلى قماش باستخدام Richedit.perform (EM_Formatrange، ...).المشكلة هي أن EM_FORMATRANG يتطلب معلمة من النوع TFormatrange الذي تم تحديده المستهدف، لكنني لا أعرف ما يجب أن يكون ما يجب أن يكون المستدي لأنني لا أعرف مقدما حجم المحتويات في Richedit.نأمل أن تكون المنطقية.

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

المحلول

مرة أخرى استخدم EM_Formatrange لقياس، انظر رسالة EM_Formatrange على MSDN:

wparam يحدد ما إذا كان يجب تقديم نص.إذا كانت هذه المعلمة غير صفرة القيمة، يتم تقديم النص. خلاف ذلك، يتم قياس النص فقط.

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

giveacodicetagpre.


مثال أكثر اكتمالا شاهد هذه المقالة ، أو بشكل عام أي رمز معاينة / طباعة Richedit ...

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