PDA

View Full Version : سوال: آیکون برای کامپوننت ...



kablayi
سه شنبه 03 شهریور 1388, 16:25 عصر
سلام...
من برای قرار دادن آیکون برای کامپوننت از کد زیر استفاده میکنم ولی نمیدونم چرا وقتی dll رو جابه جا میکنم و تو یه سیستم دیگه استفاده میکنم دیگه آیکون نداره...


<ToolboxBitmap("C:\Icon.bmp")>

مگه نباید وقتی کامپوننت رو کامپایل میکنیم این آیکنی که تو آدرس فوق هست همراه اون کامپایل بشه و ضمیمه dll بشه ؟
ولی وقتی که dll رو رو یه سیستم دیگه امتحان میکن و یا محل فایل bmp (آیکون) رو عوض میکنم دیگه آیکون رو نمایش نمیده... :افسرده:

Hossis
سه شنبه 03 شهریور 1388, 16:53 عصر
برای حل این مشکل ، در در همان جائی که کامپوننت قرار می گیره،‌تصویر را هم کپی کنید

hadiit
چهارشنبه 04 شهریور 1388, 02:02 صبح
از نرم افرار هايي مثل change icon استفاده كن

salehbagheri
چهارشنبه 04 شهریور 1388, 02:38 صبح
از Resource ها استفاده کنید! یعنی عکس مورد نظر رو به عنوان Resource به DLL اضافه کنید و ...

kablayi
چهارشنبه 04 شهریور 1388, 04:35 صبح
برای حل این مشکل ، در در همان جائی که کامپوننت قرار می گیره،‌تصویر را هم کپی کنید
ممنون که توجه کردین ... ولی تصویر رو که نمیتونم همراه کامپوننت جابه جاکنم....


از Resource ها استفاده کنید! یعنی عکس مورد نظر رو به عنوان Resource به DLL اضافه کنید و ...
متاسفانه نتونستم از دزون resource هم تصویر رو برای آیکن استفاده کنم...

توی خود MSDN هم از همین روش استفاده کرده ولی نمیدونم چرا تصویر به dll ضمیمه نمیشه...
http://msdn.microsoft.com/en-us/library/system.drawing.toolboxbitmapattribute.aspx

میگید چیکار کنم...؟؟؟

Hossis
چهارشنبه 04 شهریور 1388, 07:44 صبح
من خودم این کار رو نکردم ولی به ذهنم می رسد شما برای نصب کامپوننت ،‌ یک فایل msi درست کنید که تصویر کامپوننت را در درون commonfile یا دیگر شاخه های ویندوز و خود کامپوننت را در جای دلخواه شما یا کاربر کپی کند این طوری هیچ وقت تصویر از جای اصلی حذف نمی شود،‌ان وقت در درون dll به جای آدرس


c:\myicon.ico

مسیر کامون فایل را فراخوانی کنید (که این هم مشکلی ندارد) تا به خوبی کار کند