03-02-2009, 08:17 AM
السلام عليكم
بارك الله فيك أخي hanipino
وشكرا على الرد.
محاولتك جيدة، يمكنه كتابته باختصار
يمكن معرفة عدد الأسطر الظاهرة من النص، إذا علمنا ارتفاع المكون وارتفاع كل سطر.
ارتفاع المكون ما فيه مشكل (Height)، أما ارتفاع النص فهناك خدعة صغيرة لإيجاده:
أو يمكن تحديد LineHeight باستعمال قيمة ثابتة (تقريبا 17 Pixels)
وأسهل من ذلك استعمال RichEdit1.Font.Height- بدلا عن LineHeight ونتيجة هذه الأخيرة أحسن.
بهذا يمكن معرفة عدد الأسطر الظاهرة، لكن تبقى كيفية الوصول إلى النص الظاهر، ولأجل ذلك تجب معرفة أول وآخر سطر يظهر وطريقة الوصول إليهما.
بارك الله فيك أخي hanipino
وشكرا على الرد.
محاولتك جيدة، يمكنه كتابته باختصار
PHP كود :
with Memo1 do begin
ShowHint := True;
Hint:= Text;
end;
ارتفاع المكون ما فيه مشكل (Height)، أما ارتفاع النص فهناك خدعة صغيرة لإيجاده:
PHP كود :
var i: Integer;
LineHeight: Integer;
begin
LineHeight := Canvas.TextHeight(RichEdit1.Text);
Caption := 'Number Of Visible Line :'+ IntToStr(Height div LineHeight);
وأسهل من ذلك استعمال RichEdit1.Font.Height- بدلا عن LineHeight ونتيجة هذه الأخيرة أحسن.
بهذا يمكن معرفة عدد الأسطر الظاهرة، لكن تبقى كيفية الوصول إلى النص الظاهر، ولأجل ذلك تجب معرفة أول وآخر سطر يظهر وطريقة الوصول إليهما.

