خوراک پی سی کدنویس

ورود کاربران

آمار سایت

اعضا : 380
محتوا : 74
پیوندها : 6
بازدیدهای محتوا : 217778

حاضرین در سایت

 27 مهمان حاضر

برای نمایش بهتر سایت، از مرورگر استاندارد فایرفاکس استفاده کنید! مرورگر اینترنت اکسپلورر متعلق به دهه گذشته است!

firefox icon

Valid XHTML 1.0 Transitional Valid CSS!

تمرین ششم درس برنامه نویسی پیشرفته

3 امتیاز

در برنامه نمایش تصویر دیدیم که می توان مختصات نقطه ای که تصویر از آنجا نقاشی شود و طول و عرضی که باید اشغال کند را به دلخواه تغییر داد. می خواهیم این پارامترها را از کاربر بگیریم. یعنی دو مختصات x و y که نقطه شروع را تعیین کنند و دو پارامتر طول و عرض که طول و عرض نمایش تصویر را مشخص کنند. برای این منظور یک دیالوگ به برنامه نمایش تصویر اضافه کنید که چهار پارامتر فوق را از کاربر بگیرد (مثلا یک منوی تنظیمات اضافه کنید که با کلیک روی آن دیالوگ فوق باز شود) ضمنا این چهار پارامتر را به صورت باینری در یک فایل با نام settings.bin ذخیره کنید و در اجرای بعدی برنامه آنها را خوانده و اعمال کنید.  برای دیدن مثال، ادامه مطلب را ببینید.

مثال: در حالت عادی تصویر به صورت زیر است:

Picture Viewer, Default Settings

اگر کاربر مقادیر زیر را وارد کند، نمایش تصویر به صورت شکل زیر خواهد شد:

x: 50, y:20, width: 500, height: 500

Picture Viewer, User settings

نکته: همان طور که در تصویر فوق دیده می شود و شما تجربه خواهید کرد تصویر تغییر مقیاس یافته ظاهر خوبی ندارد برای این مشکل می توانید از تابع SetStretchBltMode متعلق به کلاس CDC کمک بگیرید. تحقیق کنید:

A better view

  • دانشجو
    avatar
    لطفا کمی در مورد ایجاد دیالوگ جدید در یک فایل توضیح دهید.
    دیالوگ ایجاد می شود اما در برنامه کامپایل شده به آن دسترسی نداریم.
  • دانشجوی دیگر (فعال)( active lo
    avatar
    در مورد sAVE کردن فایل باینری کمی راهنمایی فرمائید. دستورات مورد نیاز را نداریم.
    ضمنا لطف نموده، کمی زمان تحویل این تمرین را تمدید نمائید. چون یه خورده میان ترمامون زیاده، همشم تو همین هفته و هفته بعد افتاده.
  • مدیر سایت  - ذخیره سازی فایل باینری
    avatar
    برای ذخیره کردن فایل کار خاصی لازم نیست. پس از اینکه با دستور fwrite اطلاعات را در فایل نوشتید، از دستور fclose استفاده کنید تا فایل ذخیره شود.

    در مورد دیالوگ، در resource های برنامه یک دیالوگ جدید بسازید و سپس روی آن کلیک راست کرده و یک کلاس برای آن ایجاد کنید (Add class) حال در جایی که می خواهید دیالوگ را نشان دهید، یک نمونه از این کلاس ایجاد کرده و با دستور DoModal آن را نمایش دهید.
  • همان دانشجو
    avatar
    استاد اگر لطف کنید درمورد این دستورdomodal‎(‎‎) ‎بیشتر ازبیش توضیح دهید ممنون
  • رضا
    avatar
    سلام استاد.
    برای مرتفع کردن erroreزیر چه باید بکنم؟
    Error 2 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
  • مدیر سایت
    avatar
    این خطا زمانی رخ می دهد که یک متغیر static یا یک const تعریف کنید ولی نوع داده را مشخص نکنید. قبلا به طور پیش فرض کامپایلر int در نظر می گرفت. الان ولی باید حتما تعیین شود.
    مثلا خط زیر خطا ایجاد می کند:
    static x = 1;
    ولی خط زیر درست است:
    static int x = 1;
  • ناشناس  - خسته نباشید
    avatar
    خب بود دمت گرم.
اظهار نظر
مشخصات شما:
گراواتار enabled
نظر:
[b] [i] [u] [url] [quote] [code] [img]   
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch::(:shock:
:X:side::):P:unsure::woohoo::huh::whistle:;):s:!::?::idea::arrow:
امنیت
کد آنتی اسپم نمایش داده شده در عکس را وارد کنید.