(08-04-2020, 04:39 PM)Polia كتب : تمرير باقي البارامترات
يطلع خطأ لأنك لم تضع مكونات على الفورم على ما اظن ؟
لا ادري لماذا تريد تمرير مكونات ؟ و تغيير اللون ينفع مع محرف واحد مثلا :
CheckHex('h',label1,memo1,button1);
اما اذا كان هناك اكثر من لون فلن تستطيع رؤيتها لسرعة التنفيذ
اسف لان الكود بالدلفي لكنه متشابه مع ال C++ Builder
Function CheckHex(TargetName:string;Lb1:TLabel;Memo:TMemo;button:TButton):boolean;
var i: integer;
begin
result := false;
if TargetName = '' then exit;
uppercase(TargetName);
for i := 1 to length(TargetName) do
begin
if (TargetName[i] in ['A'..'F', '0'..'9']) = true then
begin
Memo.Lines.Add(TargetName[i] + ' Is a hex value');
lb1.Caption := 'GOOD';
lb1.color := clGreen; end
else
begin
lb1.caption := 'BAD';
lb1.Color := clRed;
Memo.Lines.Add(TargetName[i] + ' Is not a hex value');
end;
end;
end;
هذا ما فهمته و الله اعلم