المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : من Memo1 إلى Memo2؟


selloumi
21-04-2008, 03:15 PM
السلام عليكم ورحمة الله
لدي Memo1 تحوي نصا معينا ، كيف يمكنني أن استخرج منه عددا محددا من الأسطر من 1 إلى 4 مثلا( طبعا بواسطة أمر ) لأظهره في Memo2و لكم جزيل الشكر مسبقا و دمتم للموقع .

B.M.AbdelAziZ
21-04-2008, 03:36 PM
في المكون TMemo السطور تكون على شكل جدول في Lines
مثلا اول سطر يمكن الحصول عليه ب
Memo1.Lines[0]
وثاني سطر هو
Memo1.Lies[1]
وهكذا، ل احظ انه دائما عندما يكون لدينا جدول فاول عنصر هو 0 وليس 1
-
عندما نريد اضافة سطر جديد للMemo نستدعى ADD
مثلا لاضافة رابط هذا الموقع في Memo2 نكتب
Memo2.Lines.Add('http://wwwdelpharabcom);

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

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


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

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

End;


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

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


والسلام عليكم ورحمة الله

Delphawi
25-04-2008, 07:51 AM
جزاك الله خيرا استاذ عبدالعزيز

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

emo1.Lines[i].text

Wael Dalloul
28-10-2009, 09:09 AM
جزاك الله خيرا استاذ عبدالعزيز

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

emo1.Lines[i].text

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