مشاهدة النسخة كاملة : لماذا يعمل هذا الكود علي اللون الاحمر فقط
m_m_saad
15-07-2010, 10:59 PM
لماذا يعمل هذا الكود علي اللون الاحمر فقط
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;
B.M.AbdelAziZ
15-07-2010, 11:14 PM
السلام عليكم ورحمة الله
بالطريقة التي كتبت بها الاوامر دائما يتم تغيير اللون الى الاحمر
كحل سريع، غير
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;
وبالتوفيق
m_m_saad
15-07-2010, 11:16 PM
للاسف لابد لي من استخدام goto
وذلك لاني اقوم بعمل عدة خطوات بعد goto وليس خطوة واحدة
ولكن المثال الذي ضربته مثال مبسط
فأنا **** حلا ضروريا باستخدام goto
B.M.AbdelAziZ
15-07-2010, 11:18 PM
يمكن العيش دون GOTO
كحل سريع يكفي كتابة exit عند نهاية كل خطوة مثل المثال السابق
m_m_saad
15-07-2010, 11:19 PM
الحل رائع جدا
اسأل الله لك الجنه
انا بقي لي يوم كامل مش عارف احل الموضوع ده
B.M.AbdelAziZ
15-07-2010, 11:22 PM
مرحبا بك بالمنتدى
بالمناسبة هناك مقالات رائعة عن goto
اكتب بgoole هذا
Why Using A Goto Is Bad Programming Practice
vBulletin® , Copyright ©2008-2012