delphi4arab منتديات دلفي للعرب

نسخة كاملة : من Memo1 إلى Memo2؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله
لدي Memo1 تحوي نصا معينا ، كيف يمكنني أن استخرج منه عددا محددا من الأسطر من 1 إلى 4 مثلا( طبعا بواسطة أمر ) لأظهره في Memo2و لكم جزيل الشكر مسبقا و دمتم للموقع .
في المكون TMemo السطور تكون على شكل جدول في Lines
مثلا اول سطر يمكن الحصول عليه ب
PHP كود :
Memo1.Lines[0] 
وثاني سطر هو
PHP كود :
Memo1.Lies[1] 
وهكذا، ل احظ انه دائما عندما يكون لدينا جدول فاول عنصر هو 0 وليس 1
-
عندما نريد اضافة سطر جديد للMemo نستدعى ADD
مثلا لاضافة رابط هذا الموقع في Memo2 نكتب
PHP كود :
Memo2.Lines.Add('http://wwwdelpharabcom); 

او اردنا اضافة السطر الثاني من Memo1 الى Memo2 نكتب
PHP كود :
Memo2.Lines.Add(Memo1.Lines[1]); 
طبعا يمكننا كتابتها بطريقة اخرى باستخدام متغير S من نوع String لكي يكون الامر اكثر وضوحا

PHP كود :
Var
S:String;
Begin
S 
:= Memo1.Lines[1];   // السطر الثاني
Memo2.Lines.Add(S);
end; 

الان لو اردنا ان نضيف الاسطر من 1 الى الرابع نستخدم حلقة For او Repeat او غيرها

PHP كود :
Var
i : Integer;
Begin
For i:= 1 to  4 Do
Memo2.Lines.Add(Memo1.Lines[i-1]);

End; 

لو اردنا اضافة كل الاسطر، والتي عددها يكون في المتغير Count

PHP كود :
Var
i : integer;
begin
Memo2
.Clear;
for 
i := 0 to Memo1.Lines.Count-1 Do
Memo2.Lines.Add( Memo1.Lines[i] );
end; 


والسلام عليكم ورحمة الله
جزاك الله خيرا استاذ عبدالعزيز

ولكن لماذا لم تكتب :

emo1.Lines[i].text
Delphawi كتب :جزاك الله خيرا استاذ عبدالعزيز

ولكن لماذا لم تكتب :

emo1.Lines[i].text

ال Lines عبارة عن Tstrings اي مصفوفة من النوع string وكما تعلم عند التعامل مع المصفوفة نضع ال Index لكي نحصل على ما في الداخل, فلذلك لا حاجة لوضع text.