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

مشاهدة النسخة كاملة : الاكمال التلقائي


أمير الدلفي
18-05-2008, 11:11 AM
السلام عليكم
سررت بالانصمام اليكم مجددا
يا أحبائي لمزيد من الرقي في البرمجة والتمرن معها
أحببت أن ألقي عليكم هذا السؤال وأحببت أكثر أن تردوا علي جزاكم الله خيرا

في منظمة تربوية أدخلنا مثلا أسماء لطلبة
وفي العام المقبل قدم مجموعة من الطلبة و**** أن أدخل أسمائهم مع العلم أني استعمل مكون edit للادخال في الجدول فما الحيلة ان كتبت اسم وهو موجود في الجدول يخرجه لي وهو مظلل
كما ترون في محرك البحث في google أو أي موقع محترف
في الحقيقة أعرف البداية كيف أن المؤشر يذهب الى التعليمة أما التظليل فلا أعرفه و أظن أنها التعليمة
gotonerst

شكرا لكم على الاهتمام
والسلام .

merouane
18-05-2008, 11:50 AM
كيف يخرجه في نفس Edit أم في مكان أخر

أمير الدلفي
18-05-2008, 01:23 PM
أسعدني مرورك أخ مروان
نعم في نفس edit
لاحظ عندما نستعمل google لبحث كلمة : الدلفي للعرب
فإننا إذا غلقنا الصفحة وأعدنا فتحها وبدأنا بكتابة الدلفي يخرج لنا تلقائيا : الدلفي للعرب مظللة فإن أردنا ضغطنا عليها وان أردنا كتبنا : الدلفي للجميع فبمجرد أن كتبنا للجميع وبالتحديد في كتابة حرف : ج تختفي الدلفي للعرب التي كتبنها سابقا
فهو يتحسس للحروف التي نكتبها
***** أن قصدي واضح

merouane
18-05-2008, 01:52 PM
سأقدم لك مثال كنت استعملته منذ مدة

وهو أحسن من Edit بحيث نخزن الكلمات السابقة

في برنامجي استعملت ComboBox1 (طبعا يمكنك أن تبقى مع Edit)

في المثال تعاملت مع OnChange و OnExit

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
Table1.SetRangeStart;
Table1.FieldByName('Nom').asstring:=ComboBox1.Text ;
Table1.ApplyRange;
end;

procedure TForm1.ComboBox1Exit(Sender: TObject);
begin
if ComboBox1.Text<>'' then ComboBox1.Items.Add(ComboBox1.text);
end;


معلومات : SetRangeStart ليست سوى Filter لكن "طرفي"
FR: Filtres avec des bornes / En: Filters with terminals

حيث SetRangeStart تحدد بداية العملية، و ApplyRange تنهي وتقوم بالعملية

المثال فوق بسيط ويقوم بالعملية ، لكن هناك إجراءات أخرى مثل SetRangeEnd، CancelRange ...
استخدم Help الخاص بالدلفي ستجد أمثلة وشروحات وافية

ملاحظة (ستقرأها في Help) : في حالة جداول Paradox و DBase هذه الإجراءات لا تعمل إلا مع الحقول المفهرسة Index ، اما للجداول SQL مثل MySQL، InterBase فالإجراءات تعمل مع أي حقل.

آمل أنه المطلوب

بالتوفيق :)

SALAH
31-05-2008, 01:30 PM
ممكن مثال مفتوح يا اخوة
فالفكرة جيدة ولكن عند التطبيق لا يصدر لي شيئا
وأنا مع edit خاصة في الكود التالي :
if ComboBox1.Text<>'' then ComboBox1.Items.Add(ComboBox1.text);