سأقدم لك مثال كنت استعملته منذ مدة
وهو أحسن من Edit بحيث نخزن الكلمات السابقة
في برنامجي استعملت ComboBox1 (طبعا يمكنك أن تبقى مع Edit)
في المثال تعاملت مع OnChange و OnExit
معلومات : SetRangeStart ليست سوى Filter لكن "طرفي"
FR: Filtres avec des bornes / En: Filters with terminals
حيث SetRangeStart تحدد بداية العملية، و ApplyRange تنهي وتقوم بالعملية
المثال فوق بسيط ويقوم بالعملية ، لكن هناك إجراءات أخرى مثل SetRangeEnd، CancelRange ...
استخدم Help الخاص بالدلفي ستجد أمثلة وشروحات وافية
ملاحظة (ستقرأها في Help) : في حالة جداول Paradox و DBase هذه الإجراءات لا تعمل إلا مع الحقول المفهرسة Index ، اما للجداول SQL مثل MySQL، InterBase فالإجراءات تعمل مع أي حقل.
آمل أنه المطلوب
بالتوفيق
وهو أحسن من 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 فالإجراءات تعمل مع أي حقل.
آمل أنه المطلوب
بالتوفيق

