PDA

View Full Version : استفاده از picturebox برای کار با نقشه



nazanin_z
دوشنبه 10 بهمن 1390, 15:08 عصر
سلام
یکسری سوال پرسیده بودم در مورد اینکه چطور میتوانیم با کلیک روی هر شهر نقشه آن شهر را بزرگ کنیم و یا اطلاعات اونو تو یه صفحه دیگه نمایش بدیم.
دوسان گفته بودن باید از picturebox استفاده کنم و با فتوشاپ هر شهر رو روی نقشه ببرم و کنارهم بذارم.
اما سوالم اینه که هر شهر رو کنار هم بچسبونم روی فرمم؟ تا نقشه ایران تشکیل شه؟؟؟ اینجوری که نامرتب میشه!

یا اون شهرای بریده شده رو روی یه نقشه کامل که روی فرمم هس بذارم و هیدن کنمشون! اونموقع هم که نمیشه روش کلیک کرد!!

باید چیکار کنم؟

raha1234567
دوشنبه 10 بهمن 1390, 17:58 عصر
فکر می کنم باید هر شهر رو بزرگ شده اش رو بذاری در یک Pic.B بعد Pic.B رو بذاری کنار هم.

m2_farzan
دوشنبه 10 بهمن 1390, 18:10 عصر
متوجه نمیشم، مشکل کجاست؟ عکس شهر ها رو با پسوند png ذخیره کنید و با PictureBox داخل صفحه بگذارید.

zarrinnegar
دوشنبه 10 بهمن 1390, 19:48 عصر
سلام
یکسری سوال پرسیده بودم در مورد اینکه چطور میتوانیم با کلیک روی هر شهر نقشه آن شهر را بزرگ کنیم و یا اطلاعات اونو تو یه صفحه دیگه نمایش بدیم.
دوسان گفته بودن باید از picturebox استفاده کنم و با فتوشاپ هر شهر رو روی نقشه ببرم و کنارهم بذارم.
اما سوالم اینه که هر شهر رو کنار هم بچسبونم روی فرمم؟ تا نقشه ایران تشکیل شه؟؟؟ اینجوری که نامرتب میشه!

یا اون شهرای بریده شده رو روی یه نقشه کامل که روی فرمم هس بذارم و هیدن کنمشون! اونموقع هم که نمیشه روش کلیک کرد!!

باید چیکار کنم؟

راه اول
اگر بخوای با Picture کار کنید یه قسمتی از کار راحته و یه قسمت دیگه سخت
قسمت راحت
شما باید یک تصویر از کل کشور داشته باشی با حجم پایین
بعد از 30 یا 32 استان به تفکیک باید عکس داشته باشید
بعد برای هر استان به تفکیک شهر هم عکس داشته باشید

قسمت سخت
حالا میتونی 3 تا Usercontrol و یا 3تا Picturebox داشته باشی که توی اولی ایران و توی دومی یک استان و توی سومی شهر های اون استان رو نشون بدی

اولی راحته
نقشه ایران رو باز میکنی و نشون میدی ولی میمونه کلیک روی استانها که تشخیص بدی که روی کدوم استان کلیک شده و بعد استان مورد نظر رو باز کنی
اینجاست که در دسر شروع میشه
معمولا اگر به تعداد استانها PictureBox بزاری روی PictureBox ایران و توشو پر نکنی و اونو کوچیک کنی به اندازه استان مورد نظر و بعد توی click اون بنویسی برو استان رو نشون بده

صفحه استان باز میشه و این داستان دوباره اجرا میشه

حالا همین قضیه برای استان و شهر هاش پیش میاد
سختی استان اینه که اگر بخوای از این تکنیک استفاده کنی باید به تعداد استان ها دوباره مثل ایران عمل کنی


و اما راه دوم

راه دوم اینه که از عکس استفاده نکنی و از Shape استفاده کنی
توی این روش اگر Shape ایران و استانها و شهر ها رو پیداکنی میتونی با یک ابزار ساده همه رو یکجا لود کنی و با کلیک روی هر تکه از Shape بگی استان رو باز کن و توی استان بگی که شهر رو باز کن
هم حجم Shape ها فوقالعاده کمه و هم سرعتش زیاده

فقط نوع ابزار و نحوه استفاده از اون مهمه که یکمی همت میخواد

nazanin_z
سه شنبه 11 بهمن 1390, 09:20 صبح
shape چی هست؟
میشه بیشر توضیح بدی؟
ممنون

zarrinnegar
سه شنبه 11 بهمن 1390, 09:52 صبح
shape فایل ها فایل هایی هستند که داخل آنها اشکال بصورت نقطه ، خط و چند ضلعی رسم میشوند و 2 بعدی هستند و حاوی اطلاعات مکانی هم میتوانند باشند

مانند شکل زیر
که هر استان قابل انتخاب میباشد
81769
برای اطلاعات بیشتر به ابزار ها و برنامه های مربوط به Gis مراجعه کنید

modern_amin
سه شنبه 11 بهمن 1390, 10:32 صبح
هم میتونی مختصات بدی
هم میتونی از عکس الگو بگیری
و در سطح حرفه ای تر برو سمت GIS
.
سورس نقشه تو سایت هست ( iran map)

nazanin_z
سه شنبه 11 بهمن 1390, 15:10 عصر
آره iran map رو دیدم
فقط نمیدونم چج.ری دسوراتمو بدم! در اون برنامه موس روی هر شهر میره اسمش میاد
نمیدونم دستور اینکه مثلا با کلیک روی شهر تهران بره تو فرمی که مشخصات تهران هس رو بدم!!
کمکم میکنین لطفا؟

nazanin_z
سه شنبه 11 بهمن 1390, 22:16 عصر
ا

معمولا اگر به تعداد استانها PictureBox بزاری روی PictureBox ایران و توشو پر نکنی و اونو کوچیک کنی به اندازه استان مورد نظر و بعد توی click اون بنویسی برو استان رو نشون بده

صفحه استان باز میشه و این داستان دوباره اجرا میشه





ویزیبلشو فالس کنم؟
اگه توشو پر نکنم که یه صفحه کوچولو طوسی میاد!

zarrinnegar
چهارشنبه 12 بهمن 1390, 00:06 صبح
ویزیبلشو فالس کنم؟
اگه توشو پر نکنم که یه صفحه کوچولو طوسی میاد!
نه
از نوع Transparent انتخاب کنی هیچچی نشون نمیده

Visible چی رو False کنی؟
میتونی از UserControl استفاده کنی و 3 تا بسازی یکی برای ایران یکی برای استان و یکی هم برای شهر ها
توی هر کدوم کارهایی رو که گفتم انجام بدی و بعد 3 تاش رو هم به فرمت اضافه کنی و یکیش رو Visible رو بزاری True و اون یکی ها رو False کنی
این ساده ترینشه

یا اینکه 3 تا فرم بزاری و با کلیک فرم ها رو باز کنی

میشه بگید آخرش میخواهید چیکار کنید؟
فرض که شما همه رو انجام دادید آخرش میخواهید همین شهر ها رو نشون بدید یا کار دیگه ای دارید؟
از این جهت پرسیدم که شاید راه بهتری وجود داشته باشه

nazanin_z
چهارشنبه 12 بهمن 1390, 15:01 عصر
میخوام با کلیک روی هر شهر مثلا تهران وارد نقشه شهرهای تهران بشه
و با کلیک روی هر قسمت مثلا شهر ری یکسری اطلاعات و مشخصاتی بیاد که تو یه گرید هستو دریک صفحه.

ببخشید انقدر سوال میپرسم اخه من هنوز تازه کارم. کجا میتونم transparent کنم؟ و بک گراند؟؟؟

nazanin_z
چهارشنبه 12 بهمن 1390, 19:25 عصر
transparent میذارم اما طوسی میشه!!!!
چیکار کنم پیدا نباشه؟

gilas1368
چهارشنبه 12 بهمن 1390, 19:42 عصر
Visible رو false کنین pictureboxزمان اجرا نشون داده نمیشه

nazanin_z
چهارشنبه 12 بهمن 1390, 22:21 عصر
مشکلم حل شد
از panel استفاده کردم