پیشتر نحوه کار با تصاویر در سی شارپ و چگونگی ایجاد یا بارگذاری عکس از هارد را آموختیم. اما در برخی از برنامهها نیاز داریم تا بارگذاری عکس از Resource برنامه انجام شود، یعنی تصویری را که در داخل PictureBox نمایش میدهیم، محتوای آن در داخل فایل اجرایی برنامه باشد. به این معنا که خیالمان از این بابت راحت شود که تصویر مربوطه در داخل فایل اجرایی است و احتمال اینکه تصویر از حافظه سیستم کاربر حذف شود و یا نام و آدرس آن تغییر کند، وجود نداشته باشد. برای اینکار باید تصویر مربوطه را در Resource برنامه قرار دهیم و سپس در کادری که میخواهیم تصویر نمایش داده شود، از آدرس عکس در Resource برنامه سی شارپ خود استفاده کنیم.
[divider]
افزودن فایل به Resource برنامه در سی شارپ
برای یادگیری این امکان ابتدا یک پروژه WinForm جدید در ویژوال استودیو بسازید. اکنون برای افزودن تصویر به Resource برنامه از نوار ابزار بالایی ویژوال استودیو گزینه Project را کلیک کرده و سپس Properties را کلیک کنید:
در پنجرهای که باز میشود، از منوی سمت چپ گزینه Resource را انتخاب کنید:
حالا، در بالای این صفحه گزینهای به نام Add Resource ظاهر میشود. این گزینه را انتخاب کرده و از زیر منوی آن گزینه Add Existing File را انتخاب کنید:
در مرحله بعد باید فایل دلخواه خود را انتخاب و تایید کنید تا به لیست Resource های برنامه افزوده شود:
حال با فشردن دکمه Ctrl + S تغییرات انجام شده در Resource برنامه را ذخیره کنید. تا به اینجا شما توانستید یک فایل تصویری را به Resource برنامه سی شارپ خود اضافه کنید. در ادامه نحوه نمایش تصویر از Resource در PictureBox را فراخواهیم گرفت.
[divider]
نمایش عکس از Resource برنامه سی شارپ
در داخل فرم برنامه یک دکمه به نام LoadBtn و یک PictureBox به نام LogoPictureBox قرار دهید:
سپس بر روس PictureBox کلیک کنید و در پنجره properties خاصیت SizeMode آن را بر روی StretchImage قرار دهید.
در این حالت وقتی تصویری را در PictureBox قرار دهید که ابعاد آن بزرگتر یا کوچکتر از کادر باشد، تصویر مورد نظر کشیده یا فشرده میشود تا بصورت کامل در کادر نمایش داده شود. زمانی که از این حالت استفاده میکنید، ابعاد کادر PictureBox را متناسب با ابعاد عکس در نظر بگیرید تا تصویر شما دفرمه نشود.حال بر روی دکمه بارگذاری عکس دوبار کلیک کنید تا وارد event handler مربوط به کلیک دکمه شوید. کدی که در داخل این تابع مینویسید، زمانی اجرا خواهد شد که شما بر روی دکمه کلیک می کنید. در داخل این تابع تنها کافیست تا کد زیر را قرار دهید:
LogoPictureBox.Image = Properties.Resources.logo;
در نمای کلی کد برنامه شما به صورت زیر خواهد بود:
حال کافیست تا با فشردن کلید F5 برنامه را اجرا کرده و بر روی دکمه بارگذاری عکس کلیک کنید. مشاهده خواهید کرد که بارگذاری عکس از Resource برنامه صورت میگیرد.
موفق و پیروز باشید…
همچنین می توانید نمونه پروژه مربوط به این آموزش را دانلود نمایید:
پسورد فایل: www.myempire.ir
سلام ممنون
مرررررسی مفید بود