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

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



ترتيب العناصر باستخدام القاموس في الدلفي - mohamed49 - 15-01-2018

السلام عليكم
عندي مشكلة في ترتيب العناصر عند اضافتها بحيث عند جلب اسماء  ورابط السور واضافتها الى  dictionary   ثم اضافتها الى الكومبوبكس تظهر غير مرتبة مع العلم في السي شارب لا توجد هذه المشكلة  ما الحل ؟


RE: ترتيب العناصر باستخدام القاموس في الدلفي - مبرمج حر - 16-01-2018

السلام عليكم
sorted لترتيب العناصر
كود :
ComboBox1.Sorted:=True;



RE: ترتيب العناصر باستخدام القاموس في الدلفي - mohamed49 - 17-01-2018

(16-01-2018, 08:18 AM)مبرمج حر كتب : السلام عليكم
sorted لترتيب العناصر
كود :
ComboBox1.Sorted:=True;

شكرا على الرد الامر يتعلق بال dictionary وليس الكومبوبكس ثانيا انا اعمل على الاندرويد ولا توجد هذه الخاصية في الكومبوبوكس


RE: ترتيب العناصر باستخدام القاموس في الدلفي - invoker - 28-01-2018

وعليكم السلام ورحمة الله

لاحظت هذه المشكلة في الدلفي ولكن لم ابحث فيها كثيرا صراحة لكن اذا كنت تحتاج اضافة قيمة ومفتاح فقط فلما لا تستخدم tlist وبداخلها tpair<tvalue,tkey> وتسند لها القيم او تستطيع وضع المشروع اعدل لك فيه ما يلزم الطريقة تكون هكذا
public
yourlist: tlist<tpair<string,string>>;
pair:tpair<string,string>;

yourlist:= tlist<tpair<string,string>>.create;
pair.value:='first string';
pair.key:='first key';

yourlist.add(pair);

اذا عندك اكثر من مفتاح وقيمة استخدمها داخل loop


RE: ترتيب العناصر باستخدام القاموس في الدلفي - mohamed49 - 29-01-2018

(28-01-2018, 06:06 PM)invoker كتب : وعليكم السلام ورحمة الله

شكرا على الرد اخي اريد ان اضع الاسماء في الكومبوبكس وعند الضغط على المفتاح يعطيني القيمة كيف افعل ذلك بارك الله فيك



RE: ترتيب العناصر باستخدام القاموس في الدلفي - invoker - 29-01-2018

وعليكم السلام ورحمة الله

yourlist: tlist<tpair<string,string>>;
pair:tpair<string,string>;

yourlist:= tlist<tpair<string,string>>.create;
اذا كنت تستخدم التعابير القياسية في الفلترة
عرف متغير
machcollection :tmachcollection
match : tmatch

يكون الكود هكذا
machcollection:=tregex(textofstrings,yourpaternhier,[ignorecase or single or multiline]);
for match in machcollection
begin
pair.value:=tmatch.group[1].value اسم السورة;
pair.key:=tmatch.group[2].value رابطها;

yourlist.add(pair);
end;
ثم ترسل الاسماء الى الكومبوبكس

for i=1 to yourlist.count do
begin
combobox1.items.add(yourlist[combobox1.item.index].value);

end;
اما اذا اردت جلب الرابط فغير
.value
ب
.key
الكود ربما غير مرتب كتبته على النود باد مباشرة


RE: ترتيب العناصر باستخدام القاموس في الدلفي - mohamed49 - 04-02-2018

تمام جزاك الله خيرا حلت المشكلة شكرا لك