PDA

View Full Version : سوال: مشکل با NotifyIcon



hero4000
چهارشنبه 18 فروردین 1389, 16:10 عصر
با عرض سلام خدمت اساتيد گرامي

من برنامه اي نوشتم که توي اون از NotifyIcon استفاده ميکنم و در زماني پيغامي توسط دستور زير با

NotifyIcon به کاربر ميدهم ولي با دو تا مشکل برخوردم

1 - وقتي برنامه رو در سيستم خودم اجرا ميکنم مقدار زماني رو که به دستور ميدهم که در اينجا 2000 ميلي ثانيه است رو اصلا تحويل نمي گيره

2- وقتي برنامه رو روي سيستمهاي ديگه اجرا ميکنم اصلا اين دستور رو تحويل نميگيره و به کاربر هيچ پيامي نشون نميده

اين هم کدش :



NotifyIcon1.ShowBalloonTip(2000, " براي برگشت به برنامه اينجا کليک کنيد", "براي خروج کامل روي گزينه خروج از فرم اصلي برنامه کليک کنيد", ToolTipIcon.Info)


لطفا اگه اساتيد ميدونن مشکل کجاست بنده را راهنمائي کنن

با تشکر

mehdi.mousavi
چهارشنبه 18 فروردین 1389, 18:59 عصر
با عرض سلام خدمت اساتيد گرامي من برنامه اي نوشتم که توي اون از NotifyIcon استفاده ميکنم و در زماني پيغامي توسط دستور زير با NotifyIcon به کاربر ميدهم ولي با دو تا مشکل برخوردم لطفا اگه اساتيد ميدونن مشکل کجاست بنده را راهنمائي کنن با تشکر

سلام.
احتمالا Icon Property رو روی NotifyIcon ست نکرده اید! اگر آیکون مزبور null باشه، Tooltip نشون داده نمیشه.

موفق باشید.

Netsky
چهارشنبه 18 فروردین 1389, 19:23 عصر
با سلام .
پیرو پاسخی که دوست عزیزم جناب موسوی دادند ، من هم این کد رو قرار میدم تا بتونید آیکون رو ست کنید :



NotifyIcon1.Icon = Me.Icon

موفق باشید .............

hero4000
پنج شنبه 19 فروردین 1389, 08:50 صبح
دوستان توجه نکردند

من همه اين کارها رو کردم و برنامم آيکون داره مشکل من توي اينه که Tooltip توي سيستم من نمايش داده ميشه ولي روي بعضي از سيستمهاي ديگه نمايش داده ميشه

در ضمن موردي که امروز متوجه شدم اينه که توي يک سيستمي که ويژوال استديو روش نصب بود هم نشون ميداد

نتيجه گيري فعلي من اينه که يک تنظيماتي ويژوال استديو روي فايلهاي سيستمي انجام ميده که برنامه درست کار ميکنه

mehdi.mousavi
پنج شنبه 19 فروردین 1389, 09:40 صبح
دوستان توجه نکردند من همه اين کارها رو کردم و برنامم آيکون داره مشکل من توي اينه که Tooltip توي سيستم من نمايش داده ميشه ولي روي بعضي از سيستمهاي ديگه نمايش داده ميشه در ضمن موردي که امروز متوجه شدم اينه که توي يک سيستمي که ويژوال استديو روش نصب بود هم نشون ميداد نتيجه گيري فعلي من اينه که يک تنظيماتي ويژوال استديو روي فايلهاي سيستمي انجام ميده که برنامه درست کار ميکنه

سلام.
این مساله ربطی به بودن یا نبودن Visual Studio روی سیستم Target نداره! برای پیدا کردن مشکل، باید مساله رو ساده کنید. ابتدا یک برنامه ساده new کنید و درونش یک NotifyIcon قرار بدید. سپس با توجه به مساله ای که در پست قبلی توضیح دادم، Tooltipمورد نظر رو روی صفحه نمایش بدید. هیچ کار اضافی دیگه ای در برنامه انجام ندید. سپس EXE برنامه رو روی چند تا ماشین تست کنید و نتیجه رو به من بگید.

موفق باشید.

پاورقی: ممکنه Tooltip در شرایط اجرایی خاصی نشون داده بشه، اما فرضا هنگامیکه سیستم به IDLE Time میره، از کار بیفته. یا Thread هایی که احیانا در برنامه استفاده کرده اید، باعث بروز مشکل بشه. در واقع میخوام بگم ممکن دلیل این مساله، جای دیگه ای نهفته باشه، برای همین میگم یک برنامه ساده فقط برای تست این مساله ایجاد کرده و آزمایش کنید.

hero4000
پنج شنبه 19 فروردین 1389, 10:33 صبح
با تشکر از شما دوست عزيز

من اون مورد رو که فرموديد تست کردم و مشکل همانطور پابرجاست

پروژه ساده اي رو هم که فرموديد ميذارم فقط لطف کنيد اول فايل اجرائي ساخته شده توسط ويژوال استديوي من را تست کنيد و سپس خودتون برنامه رو کامپايل کنين ببينين مشکل از ويژوال استديوي من احيانا نيست

با تشکر از شما

mehdi.mousavi
پنج شنبه 19 فروردین 1389, 10:58 صبح
با تشکر از شما دوست عزيز من اون مورد رو که فرموديد تست کردم و مشکل همانطور پابرجاست پروژه ساده اي رو هم که فرموديد ميذارم فقط لطف کنيد اول فايل اجرائي ساخته شده توسط ويژوال استديوي من را تست کنيد و سپس خودتون برنامه رو کامپايل کنين ببينين مشکل از ويژوال استديوي من احيانا نيست با تشکر از شما

سلام.
فایل اجرایی هیچ مشکلی نداره. کد هم بدرستی نوشته شده.

پاورقی: واقعا دیگه چیزی به ذهنم نمیرسه!

hero4000
پنج شنبه 19 فروردین 1389, 11:13 صبح
يعني توي سيستم شما Tooltip نمايش داده ميشه ؟؟

اگه جوابتون مثبته پس چرا توي بقيه سيستمها که ويژوال استديو ندارند جواب نميده ؟؟؟ (توي 4 تا سيستم چک کردم که دوتاشون فقط فرم ورک داشتند و دوتاشون ويژوال استديو داشتند که توي دوتاي اول اصلا پيغام رو نشون نداد و توي دوتاي بعدي پيغام رو نشون داد ولي زمان رو دلخواه نشون داد)

mehdi.mousavi
پنج شنبه 19 فروردین 1389, 11:24 صبح
يعني توي سيستم شما Tooltip نمايش داده ميشه ؟؟ اگه جوابتون مثبته پس چرا توي بقيه سيستمها که ويژوال استديو ندارند جواب نميده ؟؟؟ (توي 4 تا سيستم چک کردم که دوتاشون فقط فرم ورک داشتند و دوتاشون ويژوال استديو داشتند که توي دوتاي اول اصلا پيغام رو نشون نداد و توي دوتاي بعدي پيغام رو نشون داد ولي زمان رو دلخواه نشون داد)

بله. در سیستمی آزمایش کردم که VS نداره و برنامه بدرستی Tooltip رو نشون داد. واقعا نظری ندارم...

RADPOUR
شنبه 13 فروردین 1390, 11:17 صبح
با سلام
مشکل نمایش بالون در سیستم های مختلف مربوط به تنظیمات رجیستری ویندوز میشه.
برای حل مشکل به مسیر زیر در رجیستری برید:(ابتدا در Start>Run تایپ کنید Regedit و سپس اجرا کنید)


HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Explorer\Advanced

در این قسمت به دنبال کلیدی با عنوان EnableBalloonTips بگردید و مقدارش رو از صفر به یک تغییر بدید.
بعدش از طریق taskmanager برنامه ی Explorer رو متوقف و دوباره اجرا کنید و یا یکبار سیستم رو reset کنید.

ssmmoo
شنبه 11 شهریور 1391, 21:52 عصر
سلام به همه
منم با notify یه مشکلی دارم وقتی صفحه اول اجرامیشه ایکون کنار ساعت میاد و وقتی از صفحه دیگه دوباره به صفحه اصلی میام یه ایکون دیگه ظاهر میشه...میخوام نشه:دی......ممنون میشم جواب بدید

xxnagin
شنبه 11 شهریور 1391, 23:12 عصر
سلام
شما چطوری ایکون ست کردید
اگه با کد نویسی ست کردید مثل notifyIcon1.icon
که کد را باید تو فرم دیگه بنویسید
یا از پروپرتی که باید ایکون مربوطه را ست کنید