السلام عليكم ورحمة الله تعالى وبركاته
ما الطريقة المختصرة بتنفيذ أمر ما (مثلا إخفاء) لكن على مجموعة من الأزرار فقط وتكون متتالية
مثلا لو أنه لدي: 40 زر (button) و إخفاء الأزرار من (12 حتى 23)، لقد جربت هذه الطريقة button[12..23] لكن بلا فائدة
وحاولت معها بكل الطرق ولم أنجح
بارك الله فيكم
أضف زر جديد ثم أضف الكود التالي:
PHP كود :
Button1.visible := false;
Button2.visible := false;
Button3.visible := false;
Button3.visible := false;
و هكذا
شكرا أخي الكريم أنا أدرك ما قلته لي
لكن لكل هذه الأزرار هل يوجد كود واحد فقط لأن النسخ واللصق متعب جدا ؟
بارك الله فيك
شيئ مثل هذا :
PHP كود :
Procedure HideButtons(Parent: TComponent; From, _To: integer);
var
BtnList: TList;
i: integer;
begin
BtnList := TList.Create;
for i := 0 to Parent.ComponentCount - 1 do
begin
if Parent.Components[i] is TCustomButton then
BtnList.Add(Parent.Components[i]);
end;
if BtnList.Count > 0 then
if (From < BtnList.Count) and (_To <= BtnList.Count) then
begin
for i := From to _To do
if (i < BtnList.Count) then
TCustomButton(BtnList.Items[i]).Hide;
end;
BtnList.Free;
end;
بارك الله فيك أخي الكريم SMP3
لكن هذا الكود طويل ومعقد، لكنني لاحظت فيه شيئا مهما
حاولت أن أختصر (ملاحظة أنا مبتديء ولا أتقن هذه الأمور)
العملية بطريقة أخرى كالآتي:
-----------------------------
procedure TForm1.Button7Click(Sender: TObject);
var a:integer;
ListeBoutons: array of TButton;
begin
for a := 1 to 3 do
ListeBoutons[a].Visible:=false;
end;
end.
------------------------------------------------------
فالبرنامج يتم تنفيذه لكنه لا يعمل ويظهر خطأ
رجاء إذا أمكنك أن تحدد لي الخطأ وتصححه
بارك الله فيك
الكود لا يعمل لأن ListeBoutons غير مهيئة .