لماذا يعمل هذا الكود علي اللون الاحمر فقط
كود :
procedure TForm1.Combo01Change(Sender: TObject);
label sss1;
label sss2;
begin
if combo01.ItemIndex=1 then goto sss2;
if combo01.itemindex=0 then goto sss1;
sss1:
begin
form1.color:=clyellow;
end;
sss2:
begin
form1.color:=clred;
end;
end;
السلام عليكم ورحمة الله
بالطريقة التي كتبت بها الاوامر دائما يتم تغيير اللون الى الاحمر
كحل سريع، غير
كود :
begin
form1.color:=clyellow;
end;
الى
كود :
begin
form1.color:=clyellow;
exit;
end;
من الاحسن الا تستعمل Goto (حاول التفكير دونها)
يمكن ان تكتب الكود بشيئ مثل
كود :
procedure TForm1.Combo01Change(Sender: TObject);
begin
if combo01.ItemIndex=1 then form1.color:=clyellow;
if combo01.itemindex=0 then form1.color:=clred;
end;
وبالتوفيق
للاسف لابد لي من استخدام goto
وذلك لاني اقوم بعمل عدة خطوات بعد goto وليس خطوة واحدة
ولكن المثال الذي ضربته مثال مبسط
فأنا **** حلا ضروريا باستخدام goto
يمكن العيش دون GOTO
كحل سريع يكفي كتابة exit عند نهاية كل خطوة مثل المثال السابق
الحل رائع جدا
اسأل الله لك الجنه
انا بقي لي يوم كامل مش عارف احل الموضوع ده
مرحبا بك بالمنتدى
بالمناسبة هناك مقالات رائعة عن goto
اكتب بgoole هذا
Why Using A Goto Is Bad Programming Practice