PDA

View Full Version : سوال: کلیک خارج از محدوده



nima_dir
دوشنبه 22 مهر 1387, 01:07 صبح
سلام دوستان
من دارم یه DateTime Picker مینویسم.یه چیزی شبیه کمبو هست که وقتی روش کلیک میشه کلندر نمایش پیدا میکنه.حالا میخوام هر جایی از صفحه غیر از محدوده کلندر که کلیک شد بسته بشه.یه چیزی شبیه همون کمبو.چکار باید بکنم که این مورد توی کنترلی که دارم مینویسم لحاظ بشه؟
با تشکر

SMRAH1
دوشنبه 22 مهر 1387, 04:14 صبح
پیغام LostFocus کنترلت رو باید بگیری و به کنترولت بگی بسته بشه (از حالت نمایش روزها در بیاد) مثل بسته شدن همون ComboBox که گفتی.

nima_dir
دوشنبه 22 مهر 1387, 10:48 صبح
سلام دوست عزیز
ممنون از راهنماییتون .من این کاری رو که گفتین انجام دادم :
تو لود کنترل:


this.LostFocus += new EventHandler(this.Lost_Focus);


و اینم کد Lost_Focus :


this.Size = new Size(300, 30);
_OpenOrNot =false ;

اما کار نکرد.میشه بیشتر راهنمایی کنین
با تشکر

adinochestva
دوشنبه 22 مهر 1387, 10:59 صبح
تو ایونت leave کدت رو بزار

nima_dir
دوشنبه 22 مهر 1387, 11:05 صبح
باز هم نشد

nima_dir
دوشنبه 22 مهر 1387, 13:26 عصر
الان مشکل تا حدی حل شده یعنی وقتی کنترل رو روی فرم میندازم با کلیک روی کنترلهای دیگه بسته میشه اما وقتی روی فرم کلیک میکنم بسته نمیشه.این رو چطور میشه حل کرد؟ممنون

SMRAH1
دوشنبه 22 مهر 1387, 18:24 عصر
سلام

یه چیزی شبیه کد پیوست باید در بیاد.

موفق باشی

MZOSAN
چهارشنبه 01 آبان 1387, 00:35 صبح
ميشه توضيح بيشتري راجع به برنامتون بدين اصلا نفهميدم چيكار ميكنه؟
منم مشكل نيما رو دارم ( يه پنل گوشه فرم كه اگه خارج اون كليك بشه بايد بسته بشه)ولي كد SMRAH1 رو نميفهمم اصلا اين دو قطعه كد رو بايد تو كدوم رويداد panel بنويسم ميشه توضيح كاملتري بدين
ممنون ميشم اگه راهنمايي كنيد

SMRAH1
چهارشنبه 01 آبان 1387, 09:18 صبح
سلام

باید متدهای OnGotFocus و OnLostFocus و OnLeave (که همگی مربوط به Focus چه گزفتن چه از دست دادن هستند) را روزنویسی کنید تا در هر لحظه که برنامه Focus تغییر کرد،به شکل مناسب خود را رسم کند.همچنین رویدادهای Click و DoubleCLick شی جاری و همچنین رویداد Click پدر شی جاری (که فرم مذکور باشد) را باید دریافت کنید تا در صورت رخ دادن، شی عکس العمل مناسب را انجام دهد.مثلا اگر روی شی جاری در حالی که Focus دارد،کلیک شود شی باید به حالت طبیعی باز گردد.

بیشتر کد برنامه معطوف نمایش بصری این فرایند شده است و اصل کد مربوط به این فرآیند قابل ملاحظه نیست.

موفق باشید