WPF - MouseMove
جمعه, ۱۱ مرداد ۱۳۹۲، ۱۰:۰۲ ب.ظ
حتما تا به حال موقع مشاهده عکس در کامپیوترتون شده که روی عکس زوم کرده باشین و عکس رو با موس انتخاب کنید و تکون بدید.
برای اینکه بخواهیم عکس رو در اندازه واقعی خودش در فرم نشون بدیم و امکان حرکت دادن اون رو با scroll داشته باشیم باید یک scrollViewer تعریف کنیم و یک Image داخل آن بگذاریم. به نحوه ی تعریف کردن scrollViewer و Image در کد زیر دقت کنید:
event هایی که برای image تعریف شده اند مربوط به رویدادهای حرکت دادن عکس با موس است که جلوتر توضیح داده خواهند شد.
برای زوم کردن روی عکس و نشان دادن اندازه واقعی عکس باید از storyboard استفاده کنیم.
به کد نوشته شده برای storyboard توجه کنید:
storyboard حتما باید در Window.Resources نوشته بشه. برای Property هایی مثل Height و Width از کلاس DoubleAnimation استفاده میشه ولی مثلا اگر خواستین margin رو هم در storyboard بنویسین باید از ThicknessAnimation استفاده کنید.
اگر میخواستین مثلا به Height یک عددی رو نسبت بدین در همینجا میتونین این کارو انجام بدین مثلا:
به کد بالا توجه کنید. path آدرس عکسی که میخواهین در Image قرار بدهید رو ازتون میگیره. با دادن این مسیر به یک object از کلاس BitmapImage و دادن آن Object به PictureBox.Source (توجه کنید که PictureBox اسم Image ای هست که در ScrollViewer ساختیم) عکس مورد نظر شما در Image نمایش داده خواهد شد. Sb نام Key در StoaryBoard است که بالا تعریف کردیم و bi.PixelHeight و bi.PixelWidth اندازه های واقعی عکس را برمی گردانند.
حالا با کلیک کردن روی دکمه ی زوم به تصویر بالا میرسین!
فرض میکنیم که میخواهیم عکس رو بدون Scroll و با موس حرکت بدیم. به رویداد هایی که در ابتدای تعریف Image داخل آن تعریف کردیم دوباره توجه کنید. کدهای نوشته شده در آن رویدادها رو در زیر میبینید:
برای اینکه بخواهیم عکس رو در اندازه واقعی خودش در فرم نشون بدیم و امکان حرکت دادن اون رو با scroll داشته باشیم باید یک scrollViewer تعریف کنیم و یک Image داخل آن بگذاریم. به نحوه ی تعریف کردن scrollViewer و Image در کد زیر دقت کنید:
event هایی که برای image تعریف شده اند مربوط به رویدادهای حرکت دادن عکس با موس است که جلوتر توضیح داده خواهند شد.
برای زوم کردن روی عکس و نشان دادن اندازه واقعی عکس باید از storyboard استفاده کنیم.
به کد نوشته شده برای storyboard توجه کنید:
storyboard حتما باید در Window.Resources نوشته بشه. برای Property هایی مثل Height و Width از کلاس DoubleAnimation استفاده میشه ولی مثلا اگر خواستین margin رو هم در storyboard بنویسین باید از ThicknessAnimation استفاده کنید.
اگر میخواستین مثلا به Height یک عددی رو نسبت بدین در همینجا میتونین این کارو انجام بدین مثلا:
StoryBoard.TargetProperty ="Height" To = "300"
همینطور میتونین StoryBoard رو در قسمت cs کد خودتون Handle کنید.به کد بالا توجه کنید. path آدرس عکسی که میخواهین در Image قرار بدهید رو ازتون میگیره. با دادن این مسیر به یک object از کلاس BitmapImage و دادن آن Object به PictureBox.Source (توجه کنید که PictureBox اسم Image ای هست که در ScrollViewer ساختیم) عکس مورد نظر شما در Image نمایش داده خواهد شد. Sb نام Key در StoaryBoard است که بالا تعریف کردیم و bi.PixelHeight و bi.PixelWidth اندازه های واقعی عکس را برمی گردانند.
حالا با کلیک کردن روی دکمه ی زوم به تصویر بالا میرسین!
فرض میکنیم که میخواهیم عکس رو بدون Scroll و با موس حرکت بدیم. به رویداد هایی که در ابتدای تعریف Image داخل آن تعریف کردیم دوباره توجه کنید. کدهای نوشته شده در آن رویدادها رو در زیر میبینید:
۹۲/۰۵/۱۱