كيف يمكننا الرسم بـ Gdi+ في Listview
#1
السلام عليكم ورحمة الله وبركاته ,,,

أخوتي الكرام ,,

كيف يمكننا الرسم بأستخدام GDI+ قي Listview هل من شرح بسيط ؟

جزاكم الله كل خير

اللهمّ إنّي ظلمت نفسي ظلماً كثيراً ولا يغفر الذّنوب إلا أنت

فاغفر لي مغفرة من عندك وارحمني إنّك أنت الغفور الرّحيم
الرد
#2
وعليكم السلام ورحمة الله وبركاته

إقتباس :كيف يمكننا الرسم بأستخدام GDI+ قي Listview هل من شرح بسيط ؟
تحديدا لا أعرف!
هناك مكتبات تمكنك من استغلال +GDI
كود :
http://www.bilsen.com/gdiplus/index.shtml http://sourceforge.net/projects/igdiplus/ http://www.torry.net/vcl/graphics/other/GDIControls.zip


هل ممكن تخبرنا بما تحاول صنعه؟ ربما نجد حلا آخر.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
الرد
#3
أخي الكريم الذي احاول صنعه سبق وسألت عنه وهو التظليل حول الاسم لكن تواجهني مشكلة حيث ان عند تفعيل Owner Drow لايمكنني التحديد في ListView هذا رقم واحد ورقم اثنان لايقوم بأضافة الرموز المعدة مسبقاً

فأتجهت لتعلم GDI ممكن ان يكون منها فائدة بأشياء اخرى جزاك الله كل خير

اللهمّ إنّي ظلمت نفسي ظلماً كثيراً ولا يغفر الذّنوب إلا أنت

فاغفر لي مغفرة من عندك وارحمني إنّك أنت الغفور الرّحيم
الرد
#4
إذا المشكلة هي:
إقتباس :ان عند تفعيل Owner Drow لايمكنني التحديد في ListView

السبب ليس في OwnerDraw، السبب لأننا أعدنا رسم العناصر Items بالكامل ولم نقم باسترجاع الرسم الأصلي

يمكننا تعديل DrawItem بشيء مثل:
PHP كود :
procedure TForm1.ListView1DrawItem(Sender: TCustomListView;
  
Item: TListItem; Rect: TRect; State: TOwnerDrawState);
begin
    
if not (odSelected in State) then
      Basic_Text3D
(Item.Caption, Item.ListView.Canvas, Rect.TopLeft, clWindowText)
    else 
begin
      Item
.ListView.Canvas.FillRect(Rect);
      
Item.ListView.Canvas.TextOut(Rect.Left, Rect.Top, Item.Caption);
    
end;
end; 
أو استخدام الحدث OnCustomDrawItem مع تعديل صغير، ثم الاستفادة من DefaultDraw.
لا حاجة لتعلم +GDI من أجل ذلك، ولا مانع من تعلمها أيضا.

انظر:
كود :
http://www.delphidabbler.com/articles?article=16 http://www.delphipages.com/forum/archive/index.php/t-71793.html


بالتوفيق.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
الرد
#5
شكراً لك اخي لكن لا فائدة يوجد بعض المشاكل والاخطاء في الكود حتى الان سأنهي باقي الامور ومن ثم اعود له لايأس مع الحياة ولا حياة مع اليأس

جزاك الله كل خير

اللهمّ إنّي ظلمت نفسي ظلماً كثيراً ولا يغفر الذّنوب إلا أنت

فاغفر لي مغفرة من عندك وارحمني إنّك أنت الغفور الرّحيم
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم