06-11-2011, 06:56 PM
السلام عليكم ورحمة الله وبركاته
عيدكم مبارك وكل عام وأنتم بخير
في الحقيقة أنا جديد في الدلفي وواجتهني مشكلة تكرار الكود عدة مرات وحاولت جعله في إجراء أو تابع لكن لم أستطع لقلة معرفتي،
هذه واجهة التطبيق:
![[صورة: delphi1l.jpg]](http://img208.imageshack.us/img208/9206/delphi1l.jpg)
حيث وبعد كتابة جملة في Edit1 العلوية وعند إختيار الحرف من القائمة المنسدلة وبعد النقر على الزر يتم عرض رسالة تظهر رتبة الحرف في أبجديته وكذا مكان تواجده الأول في الجملة هذا كله في Edit2 مع العلم أن القائمة المنسدلة تحوي جميع الحروف
وهذا الكود من برمجتي يحدد مكان رتبة الحرف المطلوب الأولى
وقد استخدمت case of في ذلك للانتقال بين الحروف:
عيدكم مبارك وكل عام وأنتم بخير
في الحقيقة أنا جديد في الدلفي وواجتهني مشكلة تكرار الكود عدة مرات وحاولت جعله في إجراء أو تابع لكن لم أستطع لقلة معرفتي،
هذه واجهة التطبيق:
![[صورة: delphi1l.jpg]](http://img208.imageshack.us/img208/9206/delphi1l.jpg)
حيث وبعد كتابة جملة في Edit1 العلوية وعند إختيار الحرف من القائمة المنسدلة وبعد النقر على الزر يتم عرض رسالة تظهر رتبة الحرف في أبجديته وكذا مكان تواجده الأول في الجملة هذا كله في Edit2 مع العلم أن القائمة المنسدلة تحوي جميع الحروف
وهذا الكود من برمجتي يحدد مكان رتبة الحرف المطلوب الأولى
وقد استخدمت case of في ذلك للانتقال بين الحروف:
كود :
procedure TForm1.Button1Click(Sender: TObject);
var ph: string;
ki,ii,xi: integer;
begin
harf:= lattres(cb1.itemindex);
case harf of
A: begin
ph:= edit1.text;
xi:=length(ph);
ki:=0;
ii:=0;
while ii<xi+1 do
begin
if ph[ii]=cb1.Text then
begin
ki:=ii;
break;
end;
inc(ii);
end;
edit2.Text:=('la positin de la '+ inttostr(integer(harf)+1)+ 'ére lattre ('+ cb1.Text + ') dans la chaine est: ' + inttostr(ki));
end;
