![]() |
|
كيف اجعل الثيم فعال داخل ليست فيو ListView - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : كيف اجعل الثيم فعال داخل ليست فيو ListView (/showthread.php?tid=5912) |
كيف اجعل الثيم فعال داخل ليست فيو ListView - Sonic - 02-02-2014 سلام عليكم لدي مشكلة في ListView عندما اضع الكود هذا كود : if item.Caption=slistview2.Items[slistview2.Items.Count-1].Caption then begin
sender.Canvas.Font.Color:=form3.Shape1.Brush.Color;في حدث AdvancedCustomDrawItem يختفي التحديد المفعل الخاص بالسكين انا استخدم مكونات AlphaControl ماهوا الحل بحيث الثيم يضل فعال داخل ليست فيو مع عمل هذا الكود كيف اجعل الثيم فعال داخل ليست فيو ListView - SMP3 - 02-02-2014 السبب يكمن في الحدث : NewAdvancedCustomDrawItem في ال Unit : sListView.pas PHP كود : procedure TsCustomListView.NewAdvancedCustomDrawItem(Sender: TCustomListView; Item: TListItem; State: TCustomDrawState; Stage: TCustomDrawStage; var DefaultDraw: Boolean); ![]() PHP كود : if Assigned(FOldAdvancedCustomDrawItem) thenبمعنى ان قمت باستخدام الحدث لأي شيئ لن يتم اكمال الحدث NewAdvancedCustomDrawItem و ستم الخروج فورا .. ما يعني عدم عمل skin لل ListView . لحل المشكلة أمامك حلان : الحل الأول أن تقوم بالتعديل على ال unit sListView و تقوم بحذف شرط التحقق من الحدث . الحل الثاني اعادة رسم ال Items كاملة في الحدث OnAdvancedCustomDrawItem . كيف اجعل الثيم فعال داخل ليست فيو ListView - Sonic - 03-02-2014 اشكرك ياغالي على مساعدتك ممكن توضيح اكتر الحل الأول أن تقوم بالتعديل على ال unit sListView و تقوم بحذف شرط التحقق من الحدث . كيف يمكني حذف شرط التحقق من الحذف دون خسارة عمل الكود |