استفسار بسيط memo.line
#1
السلام عليكم ورحمة الله ووبركاتة

الاستفسار الاول هو
لدي مكون Memo1
فيه 100 سطر
كل سطر فيه اسم شخص
---
 fahad-1
 m7md-2
 dkdd-3
----------
ولدي مكون Edit1
فارغ


لما اطبق الامر هذا
edit1.Text:=Memo1.Lines[1];

يضيف السطر الاول
انا اريده يطبق الاول وبعد ثانيه يظيف السطر الثاني وبعد ثانيه يظيف السطر الثالث بسرعة لم أستطع
-----------------------------------------
استعملت مكون التايمر ف الأمر
Memo1.Lines.Delete(1);

لاكنه بطيئ بعد رفع سرعة التايمر
هل هناك طريقة اخرى
الرد
#2
وعليكم السلام ورحمة الله وبركاته
ما الهدف من الامر ؟ اوضح حتى يمكن توجيه الاجابة الى الاصح
حسب وصفك يكفي شيئ مثل

كود :
var  i:Integer; procedure TForm1.Timer1Timer(Sender: TObject); begin if i>Memo1.Lines.Count-1 then Exit; edit1.Text:=Memo1.Lines[i];Inc(i); Application.ProcessMessages; end;
رَبَّنَا اغْفِرْ لِي وَلِوَالِدَيَّ وَلِلْمُؤْمِنِينَ يَوْمَ يَقُومُ الْحِسَابُ
الرد
#3
تسلم طال عمرك


الهدف ي طويل العمر
هو برنامج بحث
تلقائي
مثال
edit1


انا ضايف اسمهاء
داخل
memo.line
-------------
من واحد الى 10000
اريدها تنظاف واحد تلو الثاني
بحيث
ينحذف الاول
وينظاف الثاني بسرعة شبه كبيره
الى ان يو صل الى 10000

اذا م فهمت اصور لك فيديو لطريقة العمل لاكنها بطيئة
الرد
#4
الكود السابق يقوم بذلك
عليك فقط اختيار الinterval المناسب
انتبه عشرة ألاف تخذ وقت وان اسرعنها كثيرا لا يمكن للمستخدم مشاهدتها

كود :
procedure TForm1.FormCreate(Sender: TObject); var  int:Integer; begin int:=Round(10*1000/Memo1.Lines.Count); if int<10 then int:=10; if int>1000 then int:=1000; Timer1.Interval:= int; end;
رَبَّنَا اغْفِرْ لِي وَلِوَالِدَيَّ وَلِلْمُؤْمِنِينَ يَوْمَ يَقُومُ الْحِسَابُ
الرد
#5
يعطيك العافية
جاري التجربة
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم