Forum > Arabic
معرفة أدوات النموذج
pascal111:
جرّبتها ،الدّالة تعمل جيّداً لكنّني لستُ على يقينٍ من طريقتي في إستخدامها بعد.
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm1 } TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; procedure Button1Click(Sender: TObject); private public end; var Form1: TForm1; arrNumbercontrol: array of Integer; function FCountClass(varform: TWinControl; AClass: TControlClass): Boolean; implementation {$R *.lfm} function FCountClass(varform: TWinControl; AClass: TControlClass): Boolean;var i: Integer; // i متغير للحلقةbegin for i := 0 to varform.ControlCount - 1 do begin // هذه الحلقة تقوم بالبحث عن الأدواة edit // وسط أدوات الـفورم if varform.Controls[i] is AClass then begin SetLength(arrNumbercontrol, Length(arrNumbercontrol) + 1); // عند وجود أداة من نوع Edit يضيف رقم الترتيب للأداة في لوحة النصوص arrNumbercontrol[High(arrNumbercontrol)] := i; end; end; Result := Length(arrNumbercontrol) > 0;end; { TForm1 } procedure TForm1.Button1Click(Sender: TObject); begin if FCountClass(self,tedit) then showmessage(inttostr(High(arrNumbercontrol)+1)); end; end.
Zaher:
للدقة لا يفترض ان تعمل مصفوفة عامة ترجع فيها معلومات مؤقتة
يعني arrNumbercontrol موقعها خطأ
ان ترجعها من الدالة نفسها وهو الحل الافضل
Al-Eid:
--- Quote from: nouzi on August 14, 2021, 01:24:48 am ---هذا تصوري الكود تقريبا لكن مزال بعض الملاحظات أخ زاهر مثل :
نوع الوظيفة عدادي وليس منطقي-
اختصار جميع الدوال في دالة واحدة
--- End quote ---
أعتقد لو أختصرنا كل الدوال في دالة واحدة يجب أن يكون هناك إجراء if لمعرفة نوع الأداة وكثير من المصفوفات لتسجل رقم الترتيبي ولذلك من الأفضل أن يبقى كل نوع له دلته الخاص به هذا مجرد رائي يمكن أن تفيدونا أكثر
nouzi:
--- Quote from: Al-Eid on August 15, 2021, 11:45:58 pm ---
--- Quote from: nouzi on August 14, 2021, 01:24:48 am ---هذا تصوري الكود تقريبا لكن مزال بعض الملاحظات أخ زاهر مثل :
نوع الوظيفة عدادي وليس منطقي-
اختصار جميع الدوال في دالة واحدة
--- End quote ---
أعتقد لو أختصرنا كل الدوال في دالة واحدة يجب أن يكون هناك إجراء if لمعرفة نوع الأداة وكثير من المصفوفات لتسجل رقم الترتيبي ولذلك من الأفضل أن يبقى كل نوع له دلته الخاص به هذا مجرد رائي يمكن أن تفيدونا أكثر
--- End quote ---
لن تحتاج إلى شرط غير الشرط الوحيد الموجود في الدالة الاصلية
يبقى كل شئ مربوط حسب تصورك للحل و تصميمك لي الشفرة
Al-Eid:
--- Quote from: Zaher on August 14, 2021, 05:53:38 pm ---ليس بعد اذا اردت كل التوابع ممكن هذه الطريقة
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---function FCountClass(varform: TWinControl; AClass: TControlClass): Boolean;var i: Integer; // i متغير للحلقةbegin for i := 0 to varform.ControlCount - 1 do begin // هذه الحلقة تقوم بالبحث عن الأدواة edit // وسط أدوات الـفورم if varform.Controls[i] is AClass then begin SetLength(arrNumbercontrol, Length(arrNumbercontrol) + 1); // عند وجود أداة من نوع Edit يضيف رقم الترتيب للأداة في لوحة النصوص arrNumbercontrol[High(arrNumbercontrol)] := i; end; end; Result := Length(arrNumbercontrol) > 0;end; FCountClass(self, TEdit);
--- End quote ---
بارك الله فيك أخ zaher
--- Quote from: nouzi on August 16, 2021, 12:58:09 am ---
--- Quote from: Al-Eid on August 15, 2021, 11:45:58 pm ---
--- Quote from: nouzi on August 14, 2021, 01:24:48 am ---هذا تصوري الكود تقريبا لكن مزال بعض الملاحظات أخ زاهر مثل :
نوع الوظيفة عدادي وليس منطقي-
اختصار جميع الدوال في دالة واحدة
--- End quote ---
أعتقد لو أختصرنا كل الدوال في دالة واحدة يجب أن يكون هناك إجراء if لمعرفة نوع الأداة وكثير من المصفوفات لتسجل رقم الترتيبي ولذلك من الأفضل أن يبقى كل نوع له دلته الخاص به هذا مجرد رائي يمكن أن تفيدونا أكثر
--- End quote ---
لن تحتاج إلى شرط غير الشرط الوحيد الموجود في الدالة الاصلية
يبقى كل شئ مربوط حسب تصورك للحل و تصميمك لي الشفرة
--- End quote ---
بارك الله فيك اخي nouzi على التوضيح
Navigation
[0] Message Index
[#] Next page
[*] Previous page