easyDelphi Q&A
+2 تصويتات
42 مشاهدات
في بعض الحالات اضيع الوقت في البحت على ايقونات استعملها في برنامجي و لاحظت انه نظام التسغيل له ايقونات خاصة به ففكرة

في استعمالها و ربح بعض الوقت  اريد مساعدة في هدا  و مشكورين

سلام
سُئل في تصنيف vcl بواسطة (6,450 نقاط) | 42 مشاهدات
 

2 إجابة

+3 تصويتات
أفضل إجابة

 

هذه العملية تنادي "Shell32.dll" و قد أجاب عليها المرحوم "" في هذه المداخلة هنا و لتحميل المثال من أمباركاديرو سنترال  من هنا

و قد فمت بعمل تعديل على المثال و كانت التجربة كالأتي:

و لتحميل المثال جاهز للتجريب من هنا و شكرا.

تم الرد عليه بواسطة (14,040 نقاط)
مختارة بواسطة
+2 تصويتات

للحصول على ImageList الخاصة بالنظام (خاصة الملفات)، اخذتها من مشروع قديم لا اعلم اذا كان مازال يعمل على الانظمة القديمة

 

var
  FileInfo: TSHFileInfo;
  ImageListHandle: THandle;
begin
  ImageListHandle := SHGetFileInfo('C:\',
    0,
    FileInfo,
    SizeOf(FileInfo),
    SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
  SmallSysImageList.Handle := ImageListHandle;
  ImageListHandle := SHGetFileInfo('C:\',
    0,
    FileInfo,
    SizeOf(FileInfo),
    SHGFI_SYSICONINDEX or SHGFI_LARGEICON);
  LargeSysImageList.Handle := ImageListHandle;

 

للحصول على رقم الصورة index الخاصة بالملف

 

function GetShellImage(FileName: string; Large, Open, Dir: Boolean): Integer;
var
  FileInfo: TSHFileInfo;
  FileAttribute, Flags: Integer;
begin
  FillChar(FileInfo, SizeOf(FileInfo), #0);
  if Dir then
    FileAttribute := FILE_ATTRIBUTE_DIRECTORY
  else
    FileAttribute := FILE_ATTRIBUTE_NORMAL;
  Flags := SHGFI_SYSICONINDEX or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES;
  if Open then
    Flags := Flags or SHGFI_OPENICON;
  if Large then
    Flags := Flags or SHGFI_LARGEICON
  else
    Flags := Flags or SHGFI_SMALLICON;
    SHGetFileInfo(PChar(FileName),
    FileAttribute,
    FileInfo,
    SizeOf(FileInfo),
    Flags);
  Result := FileInfo.iIcon;
end;

 

تم الرد عليه بواسطة (11,940 نقاط)

اسئلة متعلقة

+4 تصويتات
2 إجابة
0 تصويتات
1 إجابة
سُئل منذ 2 أيام في تصنيف vcl بواسطة fares (220 نقاط) | 36 مشاهدات
+2 تصويتات
1 إجابة
سُئل أكتوبر 27، 2018 في تصنيف vcl بواسطة youcef (240 نقاط) | 40 مشاهدات
+3 تصويتات
1 إجابة
سُئل أكتوبر 2، 2018 في تصنيف vcl بواسطة youcef (240 نقاط) | 48 مشاهدات
ادعُ اصدقائك في الفايسبوك لمشاركتك
Comodo SSL

مرحبًا بك إلى EasyDelphi Q&A، حيث يمكنك طرح الأسئلة والحصول على الإجابة عليها من المستخدمين الآخرين.

لا يسمح بطلب او السؤال عن كراك او تفعيل او كسر او فك او اي شيء يخالف اتفاقيات الترخيص  مهما كان السبب ومهما كان البرنامج ونوعه. ولا حتى نشر روابط تحتوي على مثل هذه الاشياء لا في الاسئلة ولا في الاجابات ولا التعليقات . نهائيا

292 سؤال
497 إجابة
870 تعليق
192 مستخدم