الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

فرز List View

مغلق
بدأه Wael Dalloul في 6 نوفمبر 2005 · 13 رد · 1,148 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كيف يمكنني ان افرز ListView عند النقر على احد الأعمدة

مع اظهار سهم على وجهة الفرز

هناك مكون رائع لشركة Tms ولكنه لا يدعم اضافة Icons لل Header

و به عدة مشاكل اخرى

ما هو رأس الخيط لكي اقوم بعمل مكون جديد بالاعتماد على ListView الموجودة

يقوم بعمل فرز للأعمدة مع وضع سهم يدل على الوجهة

اي ما هي الأحداث التي سوف اضيفها اي شيئ قد يفيدني في هذا الموضوع

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#2

حسب فهمي للموضوع انك تريد عمل فرز او مقارنة (sort, compare )

كما نقول دائما لحل مشكلة البداية من Delphi Help

ستجد "رأس الخيط" هناك

OnCompare event

هناك مثال قد يفيدك.

ان لم تجد ضالتك هناك فعليك بـ google ثانياً ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#3

مرحبا

انظر المرفق

List View.rar

إننا محكومون بالأمل وما يحدث الآن ليس نهاية العالم

#4

شكرا لك يا اخي M_Asize

على هذه المساعدة هذا ما كنت ابحث عنه بالضبط :rolleyes: :rolleyes:

و لكن هناك مشكلة :blink:

و هي انه حجزنا ال Icons التي ستوضع في ال column header و بالتالي لا يمكنني ان اضع Icon

لل Column header

هل من طريقة لوضع ال Icon مع السهم؟

مثل رسمها باليد عن طريق ال Canvas

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#5

غريب!

ما قلته هو نفس الشئ لكن يبدو أن الامثلة الجاهزة هي المحبذة .

لا بأس فالمثال المرفق موجود في اكثر من موقع في الانترنت منها delphi.about.com ..

ما علينا ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#6
اقتباس
ما قلته هو نفس الشئ لكن يبدو أن الامثلة الجاهزة هي المحبذة .

طبعا الأجوبة الجاهزة هي المحبذة لسرعة وصول الى ما اريده

حيث انني عندما فتحت الأنترنت كان هناك جوابان

الأول جوابك و الذي يطلب مني البحث

ام الثاني فهو جاهز و هذا ما اريده

دعك من هذا الآن فهذا لا يقدم و لا يآخر

كيف استطيع رسم صورة السهم على ال Header مع الاحتفاظ بامكانية وضع Icons له ايضا

و شكرا لك انت ايضا لا تزعل مني :lol: :lol:

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#7

لم أقصد شئ من ردي الأخير

لكن سياستي في الرد على اي سؤال هو عدم تقديم اي كود جاهز دون وجود اي محاولة من كاتب السؤال ..

بالنسبة لمشكلتك الاخيرة ان كان لدي وقت فساكتب رد ان شاء الله ( رغم اني لا اكتب برامج حالياُ).

كانت اجابتي مما بقي في ذاكرتي التي تسعى تدريجيا نحو الصفر . :)

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#8

مرحبا

المرفق بعد التعديل

List View.rar

إننا محكومون بالأمل وما يحدث الآن ليس نهاية العالم

#9

To M_Asize :

الكود الذي ارفقته جيد لكن هناك جزء ركيك فيه وهو :

(1)

...
var d : integer;
...
for d := 0 to ListView1.Columns.Count -1 do
 begin
 ListView1.Column[d].ImageIndex := ListView1.Column[d].Tag;
 end;

لا داعي لهذا .. لاحظ أن كل مرة يتم النقر على احد الأعمدة سيتم :

* حجز متغير من نوع integer

* تنفيذ for loop -الذي يعتمد على عدد الاعمدة - وفيه يتم تغيير جميع قيم ImageIndex والذي بدورة سيقود الى تغيير جميع صور الأعمدة ....etc

الكود الآتي ربما يكون أفضل :

(2)

  if i<>Column.Index then
   ListView1.Column.ImageIndex:=  ListView1.Column.Tag;

هذا الكود لا بد من تنفيذه قبل

(3)

i := Column.Index;

لماذا؟ ( (السبب واضح ...)

في الكود (2) ما ضرورة وجود الجملة الشرطية if ؟ (السبب واضح ...)

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#10

مرحبا

لايهم إن كان الكود ركيك أم لا بالنسبة لي

المهم هو الفكرة وعلى المستفيد من الكود أعادة صياغتة

وتعديله بشكل مناسب له

إننا محكومون بالأمل وما يحدث الآن ليس نهاية العالم

#11

M_Asize :

لم أقصد شيئا من ردي سوى الفائدة العلمية للجميع

ربما كان استعمالي للفظ ركيك غير مناسب لكن في لحظة كتابتي للرد لم اجد اللفظ المناسب ... ما قصدته هو ان الكود ليس فيه خطأ من الناحية القواعدية ... لكن من نواحي اخرى فكان فيه مشكله بسيطة ...

اقتباس
المهم هو الفكرة وعلى المستفيد من الكود أعادة صياغتة

وتعديله بشكل مناسب له

لكل رأيه في هذا ...

أرجو ان ردي لم يتجاوز *النقاش العلمي* البحت..

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#12

ارجوا من الاخ cipher استعمال الفاظ غير مؤذية للآخرين نحن هنا لنتعلم قد يستخف البعض بالفكرة المطروحة

و لكن ممكن ان تكون مشكلة للطرف الآخر

يمكنك استعمال الفاظ اخرى تؤدي نفس الغاية و لكن الطرف اللآخر يتقبلها بكل سرور

اقتباس
الكود الذي ارفقته جيد لكن هناك جزء ركيك فيه وهو

يمكن استبداله باي من التالي

1- فكرة حلوة بس اذا قمنا بما يلي يمكن ان يكون افضل

2- جميل جدا و لكن يجب القيام بما يلي لتحسين السرعة

3- الخ

نريد تعاون تام و لا نريد اختلاف بين الاعضاء :rolleyes: :rolleyes: :rolleyes:

فالملاحظة التي ابديتها جميلة ومفيدة و لكن طريقة الألقاء (ركز هنا) تنفر الطرف الآخر

بالنسبة للمثال

انا لا اريد ان تختفي الايقونة عند استخدام الفرز اريد اظهار الايقونتين معا في نفس الوقت

حيث ان الفكرة التي طرحها الاخ M_Asize جميلة و لكن ليست ما كنت افكر به

و بالتالي يمكن ان يقول احد ما عني انني مبتدأ في البرمجة حيث لم استطع ان اعملها

الأجابة هي : ان الفكرة لم تكن في البال كنت افكر في شئ اخر بعيد تماما

و لكن الان اقتنعت انا ما افكر فيه كان خطأ و لم انتبه اليه

اذا انّ فكرة ازالة الأيقونة للعامود و وضع ايقونة الفرز فكرة جميلة جدا

وشكرا للجميع على المساعدة

واقدر لك من الأخين العزيزنM_Asize و cipher

المساعدة

ونريد من جميع الأعضاء المحبة و التألف في المنتدى الفريق العربي و خاصة في قسم الدلفي

تم تعديل هذه المشاركة بواسطة waeldalol في 8 نوفمبر 2005 في 16:52

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#13

waeldalol :

ردي السابق كان بمثابة اعتذار :)

استعمال لفظة ركيك فعلاً كان سئ لكن القصد في ركة الكود هو وجود ضعف واللفظين بنفس المعنى تقريبا...

ملاحظة بسيطة:

أفضل أن يكون النقاش مفيد اكثر مما هو عليه الآن من اضافة أمثلة جاهزة . شخصياً لا احب الاطباق الجاهزة وهذا لا يعني ان أجبر الآخرين على موافقتي الرآي ... هذا مجرد وجه نظر شخصية

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#14
اقتباس
ملاحظة بسيطة:

أفضل أن يكون النقاش مفيد اكثر مما هو عليه الآن من اضافة أمثلة جاهزة . شخصياً لا احب الاطباق الجاهزة وهذا لا يعني ان أجبر الآخرين على موافقتي الرآي ... هذا مجرد وجه نظر شخصية

اسلوب النقاش للتوصل الى الحل جميل جدا

ولكن اضافة كود معين يؤدي الى ايضاح المشكلة اكثر ويفيد اكثر

الهدف من الرد في هذا المنتدى هو مساعدة الاخرين قدر الامكان ولكل عضو في هذا المنتدى

طريقته في الاجابة

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

و توضح الصورة لديه اكثر هذا مفيد فعلا

ولكن عند عدم توفر الوقت لدى الشخص الذي يسأل يكون الكود الجاهز هو افضل له

كلا الطريقتين مفيدتين و الذي يحدد ذلك هو سائل السؤال

بالنسبة للسؤال المطروح عندما فتحت الأنترنت رأيت

ردك ورد الاخ M_Asize حيث اخترت رد M_Asize لأنه اعطني الجواب بسرعة

و انا مستعجل على الرد فقمت باختياره

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

هذا الموضوع مغلق.

مواضيع مشابهة