delphi4arab منتديات دلفي للعرب
كيف تغير نصوص مئات من Tspeedbutton - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف تغير نصوص مئات من Tspeedbutton (/showthread.php?tid=3642)



كيف تغير نصوص مئات من Tspeedbutton - cargem - 27-11-2011

مثلا هذا الكود ولكن بوجود اخطاء
كود :
procedure DrawArray(Sender: Tform); const Katcolum1 = 'アカサタナハマヤラワンガザダバパイキシチニヒミリギジヂビピウ'+ 'クスツヌフムユルグズヅブプエケセテネヘメレゲゼデベペオコソトノホモ'+ 'ヨロヲゴゾドボポ'; // ヴァ var i: integer; // 1 .. 71; begin for i := 16 to 71 do begin // if TagArray[i] = 16 then // Continue; with TButton(Sender.Components[i]) do // [i] TagArray begin caption := Katcolum1[i]; end; end; end;
هل هناك امثلة اخرى


كيف تغير نصوص مئات من Tspeedbutton - hanipino - 27-11-2011

تصحيح الكود اعلاه

كود :
procedure DrawArray(Sender: Tform); const Katcolum1 = 'アカサタナハマヤラワンガザダバパイキシチニヒミリギジヂビピウ'+ 'クスツヌフムユルグズヅブプエケセテネヘメレゲゼデベペオコソトノホモ'+ 'ヨロヲゴゾドボポ'; var i: integer; begin for i := [color=Red]0[/color] to [color=Red]Sender.ComponentCount-1[/color] do begin if (Sender.Components[i])[color=Red] is TSpeedButton[/color] then TSpeedButton(Sender.Components[i]).caption := Katcolum1[i]; end; end;

كود :
هل هناك امثلة اخرى
يوجد فى المنتدى امثلة فى هذا الخصوص


كيف تغير نصوص مئات من Tspeedbutton - cargem - 28-11-2011

اشكرك جدا ولكن اذا كان هناك
AdvTabSheet1
AdvTabSheet2
وكل منهما لديه TSpeedButton
كيف ستحصر العملية
==========
بالنسبه للكود
عدد الحروف 71 مساوي لل TSpeedButton
ولكن لا تتطابق إلا اذا اضفت زيادة (91 حرف مثلا) وإلا فسوف يحصل خطا
ما الحل!

كود :
procedure DrawArray(Sender: Tform); const Katcolum1 = 'アカサタナハマヤラワンガザダバパイキシチニヒミリギジヂビピウ'+ 'クスツヌフムユルグズヅブプエケセテネヘメレゲゼデベペオコソトノホモ'+ 'ヨロヲゴゾドボポ[color=Red]ヨロヲゴゾドボポヨロヲゴゾドボポヨロヲゴゾドボポ[/color]'; var i,j: integer; begin j:=1; for i := 0 to Sender.ComponentCount-1 do begin if (Sender.Components[i]) is TSpeedButton then TSpeedButton(Sender.Components[i]).caption := Katcolum1[j]; inc(j); end; end;

لاحظ انني كررت ヨロヲゴゾドボポヨロヲゴゾドボポヨロヲゴゾドボポ
حتى تنجح العملية بدون خطا
والنتيجة تصبح حروف مكررةSad