PDA

View Full Version : مخفی شدن منوی poup هنگام کلیک نشدن



ali190
جمعه 12 شهریور 1389, 16:55 عصر
با سلام و عرض خسته نباشید
در سورس زیر زمانی که شما فرم رو کمپایل میکنید و بر روی دکمه روی فرم کلیک میکنید آیکون فرم کنار ساعت ویندوز میره و وقتی روی اون آیکون راست کلیک میکنید منویی ظاهر میشه
من میخام زماتنیکه منو ظاهر شد و وقتی از کلیک کردن روی اون منصرف شدم وقتی که در جای دیگه ای کلیک کردم (مثل صفحه دسکتاپ) اون منو مخفی بشه
فقط خواهشاً برای تست فرم رو کمپایل کنید و اون تو دسکتاپتون اجرا کنید
آیا باید کدی رو در فرم اضاافه کنم؟
ممنون

ali190
شنبه 13 شهریور 1389, 13:49 عصر
سلام بچه ها
برای اینکه منظورم رو درست به شما انتقال بدم یک فایل نمونه خدممتتون قرار میدم
شما در این نمونه زمانیکه بر وری آیکونیکه کنار ساعت ویندوز بوجود میاد راست کلیک میکنید و منو ظاهر میشه و یهو وسط کار از کلیک بر روی منو منصرف میشید روی دسکتاپ یا جای دیگه کلیک میکنید این منو حذف میشه و از بین میره
من کدهاشو بررسی کردم ولی سر در نیاوردم
ممنون میشم راهنماییم کنید
یاعلی

modirmasool
شنبه 13 شهریور 1389, 14:49 عصر
کاری که من همیشه می کنم اینه که وقتی منو فعاله،موقعیت مکان نما رو در هنگام فشرده شدن کلیک موس با تابع getcursorpos میگیرم و اگه موقعیتش خارج از منو بود، منو رو حذف میکنم.

ali190
شنبه 13 شهریور 1389, 14:55 عصر
میشه لطف کنید و روشی رو که فرمودید رو رو در نمونه اول اعمال بفرمائید؟
ممنون میشم ازتون

vbhamed
شنبه 13 شهریور 1389, 15:35 عصر
سلام

اينم يك نمونه ساده
فقط ماژول رو به پروژه خودتون اضافه كنيد

modirmasool
شنبه 13 شهریور 1389, 16:13 عصر
میشه لطف کنید و روشی رو که فرمودید رو رو در نمونه اول اعمال بفرمائید؟
ممنون میشم ازتون

اون چیزی که گفتم مال موقعی بود که منو رو خودتون طراحی کنین.
عوضش یه راه جالب پیدا کردم اونم اینکه قبل از فراخونی popupmenu از SetForegroundWindow استفاده کنین.
برنامه رو در ضمیمه گذاشتم.

ali190
شنبه 13 شهریور 1389, 16:21 عصر
آقا ممنون واقعاً عالی بود
میشه لطف کنید و بگید رسالت کلی این تابع چیه و اصولاً چیکار مکنه؟
ممنون

modirmasool
شنبه 13 شهریور 1389, 16:29 عصر
این تابع یه هندل میگیره و پنجره ی مربوط به اون هندل رو در لایه بالا قرار میده که خوب طبیعتا بدنبال این امر،پنجره فعال هم میشه.