السلام عليكم
جرب أخي الترتيب في عنصر Grid باستعمال الكود
على أن القيمة true مسؤولة عن الترتيب تنازلي أو تصاعدي
لكن هذا الترتيب موجه للنصوص وليس للأرقام
ويعطيك نتائج خاطئة عند استعمال أرقام
ما الحل ؟
قد تكون تمتلك حلا أو فكرة لذلك فهذا مادار في ذهني إلى غاية المشاركة بحلول أجمل
وهو أن أأخذ الرقم و أضيف للأرقام ذات منزلة حرف a
و الارقام ذات منزلتين أضيف لها حرف b
و أستمر في العملية حسب المجال العددي الذي أريده
ثم يتم الترتيب على أساس نصوص بعدها مباشرة أحذف
الحروف فتبقى الأرقام مرتبة ترى هل هذا ممكنا ؟؟
جرب مايلي
والله الموفق و المعين
تذكرونا بالدعاء
جرب أخي الترتيب في عنصر Grid باستعمال الكود
كود PHP:
Grid.SortTextItems("Grid1", 0, true, true);
لكن هذا الترتيب موجه للنصوص وليس للأرقام
ويعطيك نتائج خاطئة عند استعمال أرقام
ما الحل ؟
قد تكون تمتلك حلا أو فكرة لذلك فهذا مادار في ذهني إلى غاية المشاركة بحلول أجمل
وهو أن أأخذ الرقم و أضيف للأرقام ذات منزلة حرف a
و الارقام ذات منزلتين أضيف لها حرف b
و أستمر في العملية حسب المجال العددي الذي أريده
ثم يتم الترتيب على أساس نصوص بعدها مباشرة أحذف
الحروف فتبقى الأرقام مرتبة ترى هل هذا ممكنا ؟؟
جرب مايلي
كود PHP:
x=0------------------------------------------------------------------------------------------
p=Grid.GetRowCount("Grid1");-----------------------------------------------------------------
for i=x,p do c= Grid.GetCellText("Grid1", i, 0);c = String.ToNumber(c);----------------------
if c < 10 then Grid.SetCellText("Grid1", i, 0, "a"..c, true);--------------------------------
elseif c >=10 and c<= 99 then Grid.SetCellText("Grid1", i, 0, "b"..c, true);----------------
elseif c >=100 and c<= 999 then Grid.SetCellText("Grid1", i, 0, "c"..c, true);--------------
elseif c >=1000 and c<= 9999 then Grid.SetCellText("Grid1", i, 0, "d"..c, true);------------
elseif c >=10000 and c<= 99999 then Grid.SetCellText("Grid1", i, 0, "e"..c, true);----------
elseif c >=100000 and c<= 999999 then Grid.SetCellText("Grid1", i, 0, "f"..c, true);--------
elseif c >=1000000 and c<= 9999999 then Grid.SetCellText("Grid1", i, 0, "g"..c, true);------
end end ------
Grid.SortTextItems("Grid1", 0, true, true); ------
for u=x,p do ------
y= Grid.GetCellText("Grid1", u, 0); --abou_belkiss alger le 26-03-2014 ------
n = String.Mid(y, 1, 1); ------
c = String.Replace(y, n, "", false); ------
Grid.SetCellText("Grid1", u, 0, c, true); ------
end------------------------------------------------------------------------------------------ ------
والله الموفق و المعين

تذكرونا بالدعاء
تعليق