الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

إستغلال ال Balloons في ال Windows XP

مغلق
بدأه رغيد الطيب في 1 أكتوبر 2005 · 25 رد · 8,496 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

السلام عليكم و رحمة الله و بركاته

اليوم نتطرق سويا بإذن الله العظيم الى تغيير مبدأ بسيط من مبادىء الحوار مع المستخدم فقد تعود الكثير من المبرمجين ( و يؤسفني كثيرا ان اكون واحدا من هذا الصنف من المبرمجين ) على عدم إحترام اصول الحوار مع المستخدم فلو جربت ان تطرح علي سؤالاً مثل ( إذا اردت يا رغيد ان تخبر المستخدم بأن عنوان البريد الذي ادخله في مربع الحوار هي قيمة خاطئة ، فيكف ستخبره بذلك ؟ ) فستجدني اجيبك بتلقائية سوف اظهر له مربع حوار يخبره بذلك ! :

MsgBox("تأكد من عنوان البريد الذي ادخلته !")

نعم اظنك ترى انني لم ارتكب جرما او خطأ في إجابتي و هي تفي بالغرض إن شاء الله تعالى و لكن تخيل وجود الكثير من مربعات النص للإدخال ( الاسم، العمر، العنوان، و البريد، و المؤهلات و و و .... إلخ ) و هناك مربع حوار يظهر الخطأ في كل حقل فإذا ارتكب المستخدم بضعة اخطاء إملائية ربما لسرعة الإدخال او الإرهاق و بغض النظر عن السبب فإنه سيواجه الكثير من مربعات الحوار المزعجة و التي لن يمكنه تصحيح خطئه و العودة إلى برنامجه إلا بعد التعامل معها وهو شيء محبط و ممل كثيرا ( على الاقل بالنسبة لي خاصة و اني كثير الاخطاء للأسف ).

يكمن الحل في إتخاد اساليب اخرى للحوار مع المستخدم و يدعم الـ Visual Basic .NET اساليب اجمل لتلبية مثل هذه الأمور مثلا إستخدام الـ ErrorProvider ... فمثلا إذا كان لديك مربع نص بإسم txtEmail و لديك دالة خاصة بإسم ValidEmail تقوم بتمرير عنوان البريد لها فتعيد القيمة True اذا كان سليما و False في حال وجود خطأ فيه ... فبإستخدام الـ ErrorProvidor يمكنك عمل شيء مثل :

    Private Sub txtEmail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        If ValidEmail(txtEmail.Text) = False Then
            ErrorProvider1.SetError(txtEmail, "يوجد خطأ في عنوان البريد")
        Else
            ErrorProvider1.SetError(txtEmail, "")
        End If
    End Sub

في الشفرة السابقة جعلت الفحص يتم في الحدث TextChanged و هذا يعني ان المستخدم و اثناء كتابته سيتم إعلامه بكون البريد الذي يكتبه هو بريد خاطىء وهي وسلية افضل من جعل المستخدم يكمل كتابة جميع البيانات ليكتشف في الاخير انه اركتب الكثير من الاخطاء من خلال عرضها له بمربعات حوار MsgBox.

للفائدة :

اذا لم يكن لديك فكرة عن ErrorProvider او كنت تستخدم لغة لا يوجد بها شيء مماثل له مثل الـ VisualBasic 6.0 فيمكنك إعلام المستخدم بوجود خطأ في البيانات التي يقوم بإدخالها بطرق متعددة مثل تغيير لون الحقل ( مربع النص ) الذي يستخدمه مثلا :

    Private Sub txtEmail_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        If ValidEmail(txtEmail.Text) = False Then
            txtMail.BackColor = Color.Green
        Else
            txtMail.BackColor = Color.White
        End If
    End Sub

و بهذا فبمجرد كون البريد الذي يكتبه غير سليم فإن لون مرع النص سيدل على ذلك إلى ان يكتب عنوان بريد سليم.

الجديد في الموضوع

و الآن ننتقل الى موضوعنا الاصلي في هذا المقال وهو استغلال نظام التشغيل Windows XP لتزويد المستخدم برسائل إعلام ( او تنبيه ) ظريفة ... فتخيل معي انك تقوم بتصميم برنامج يقوم بعملية طويلة من المعالجة و يستدعي البقاء في الخلفية مثلا برنامج يراقب مساحة القرص الصلب او برنامج يقوم بتنظيف الريجستري او برنامج يستجلب بيانات من عنوان بريدك او تخيل انك تريد تصميم برنامج لمراقبة عملية اضافة اي ملفات تنفيذية الى مجلد النظام و تريد ان يقوم برنامجك بإعلامك بأي تغييرات تحدث للنظام.

و ايا كان السبب او البرنامج الذي تقوم بتصميمة فقد تستدعي الحاجة الى وجود رسائل تنبيه عند انتهاء او حدوث عملية معينة في برنامجك ... و عندها سوف تستخدم بشكل افتراضي مربعات الحوار MsgBox وسيفي بالغرض بإذن الله تعالى و لكن من الاجمل ان نستغل نظام التشغيل و نعرض شيئا مثل الصورة التالية :

01_10_05_10_51_31_1128189091Balloons.JPG

و كما هو ظاهر في الصورة فيمكنك ان تقوم بعرض الرسائل التي تريدها على شكل بالون Balloon بقرب ساعة النظام في شريط المهام وهي ذاتها الطريقة التي يستخدمها نظام الوينذوز اكس بي لعرض رسائله التنبيهية مثل ( رسالة إنخفاظ ذاكرة الرام ) او ( رسالة تنبيه بنقص المساحة التخزينية في احد اقسام القرص الصلب ) او ( رسالة التنبيه بوجود ايقونات غير مستخدمه على سطح المكتب ) و الكثير غيرها من الرسائل و جمعيها رسائل من النظام يقوم بعرضها على شكل Balloons.

و من الجميل ان نستغل هذه الميزة خاصة و كونها اقل إزعاجا للمستخدم و تختفي تلقائيا في حالة عدم إستجابة المستخدم لها بعد مرور فترة معينة.

و لكي تتمكن من إستخدام هذه الرسائل فقد قمت بتصميم فئة Class خاصة لهذا الغرض بإسم RgheedBalloon يمكنك تضمينها في مشاريعك بسهولة بإذن الله تعالى ... و فيما يلي تجد شرحا مقتضبا لهذه الفئة بإذن الله تعالى ....

كيف تستخدم الفئة RgheedBalloon

لعرض رسائل مثل :

01_10_05_10_52_40_1128189160Balloons_.JPG

ينبغي اولا ان تعرف ان هذه الفئة تحتوي على اربعة احداث يمكنك استخدامها و هي :

BalloonShown
و ينبثق هذا الحدث عندما يظهر البالون للمستخدم


BalloonHidden
و ينبثق هذا الحدث عندما يختفي البالون مثلا عند ضغط المستخدم على زر إغلاق البالون


BalloonClicked
اما هذا الحدث فعندما يقوم المستخدم بالنقر على اي جزء من البالون غير زر الإغلاق


NoResponse
وهو الحدث الذي ينبثق عندما يمر الوقت دون ان يستجيب المستخدم للبالون سواءا بالنقر او الاغلاق

و بالاضافة الى تلك الاحداث فيوجد بعض الخصائص التي تمكنك من التحكم بالبالون وهي :

BalloonTitle
عنوان البالون

BalloonText
النص الذي سيظهر للمستخدم (رسالة التنبيه) او الاستفسار

BalloonType
نوع الايقونة التي ستظهر في الرسالة

NotifyIcon
عبارة عن الـ NotifyControl الذي سترتبط به الرسالة

و الان لكي تقوم بتضمين الفئة في برنامج قم بإضافتها الى مشروعك ستجد ملف dll بإسم RgheedBalloons.dll المجلد المرفق ... افتح مشروع جديد ثم من القائمة Project اختر Add Reference ثم اختر الملف RgheedBalloons بعد الضغط على الزر Browse

و بهذا تكون قد اضفت الفئة الى مشروعك و لكي تستخدمها قم اولا بإضافة اداة NotifyIcon و التي يمكنك عن طريقها ان تقوم بجعل برنامجك يظهر بجوار ساعة النظام و اختر الايقونة التي تناسبها و لنفترض بأن اسم الادة هو NotifyIcon1 كما هو افتراضي.

و الان الى الكود .... في القسم العام للفورم قم بتعرييف متغيير من النوع RgheedBalloon مع تضمين الاحداث بواسطة WithEvents بالشكل التالي :

Dim WithEevents Balloon As RgheedBalloon

وبهذا يكون معك متغير بإسم Balloon يمثل الفئة RgheedBalloon و لكي نقوم بربطه مع الـ NotifyIcon1 لكي يظهر عنده نقوم بكتابه الكود التالي في الحدث Load للفورم :

    Private Sub Form1_Load(...) Handles MyBase.Load
        Balloon = New RgheedBalloon(NotifyIcon1)
    End Sub

يمكن الان بكل سهولة ان تقوم بعرض اي رسالة تريدها عن طريق الامر ShowBalloon و لنفرض انني اريد ان اعرض رسالة تعريفية بي كرجل يمني مسلم .. فما سأكتبه سيكون كالتالي :

Balloon.ShowBalloon("مسلم يمني الجنسية","رغيد الطيب")

و اذا قام المستخدم بالنقر على البالون فإن الحدث BalloonClicked سوف ينفذ و لعرض رسالة يمكن كتابة شيء مثل :

    Private Sub Balloon_BalloonClicked() Handles Balloon.BalloonClicked
        MsgBox("لقد تم النقر على البالون")
    End Sub

في المثال المرفق ستجد مثالا كاملا عن إستخدام الفئة المذكورة في برامجنا بإذن الله تعالى.

اخيرا نقول السلام عليكم و رحمة الله و بركاته

RgheedBalloons.zip

مواضيع برمجية تقنية جديدة

----------------------------------------------------------------------------------------------------------------------------------------------

• إستغلال خدمة الـ RSS في برامجنا ومواقعنا ! (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• برنامج للبحث في الملفات ومحتواياتها (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• فئة للتراسل بين برنامجين في جهاز واحد ! (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

مواضيع برمجية تقنية قديمة

----------------------------------------------------------------------------------------------------------------------------------------------

• إستغلال رسائل البالونات Balloons في الوينذوز أكس بي(VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• مقالة : لماذا يجب ان نعتني بشفرات برامجنا !؟- (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• لمطوري البرامج و مواقع الويب - برنامج تركيب ألوان - (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• برنامج : بسيط للتحكم بالنظام, عن طريق الريجستري - (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• برنامج : لتقييد و منع تشغيل البرامج الاخرى - (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• النوافذ المنبثقة و طريقة لإستغلالها في برامجنا -(VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• تقنية الإستدعاء الذاتي - (VB.NET , VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• مصفوفات الأدوات Control Arrays افكار وتلميحات ! - (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• أفكار و تلميحات[ المعنى الحقيقي للـ True و False ] - أمثلة (VB.NETVB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• دوال الـ APIs و مايقابلها في الدوت نت ! - (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

#2

الف شكر على هذا الدرس الرائع اخي رغيد الطيب

تعلم:كيف تشغل برنامجك (قبل) ما يشتغل ال explorer, مثل ال check desk في الوندوز 98 و me

اللهم عطر يومنا بالايمان وانر قلبنا بالقرآن ورزقنا من حيث لانحتسب واجعل لنا سكينة تطمئن بها روحنا واحفظنا من كل سوء اللهم بارك لنا في رجب وشعبان وبلغنا رمضان آمين يارب العالمين

ranneh.com

#3

رائع أخي الكريم رغيد الطيب..الحقيقة أنا لسا ما شفت الموضوع بس أراه جيدا بخبرك رأي..

بس مجرد درس لك شرف عظيم

#4

شكراً أخي الأستاذ رغيد، ولكن يوجد ملاحظة هامة:

للأسف الإعتماد على هذه البالونات في الرسائل الهامّة هو خطأ قاتل، ليس فقط لأن المستخدم قد لا ينتبه لها (لأنها تتلاشى بعد فترة ولكن لأنها وسيلة لا يمكن التعويل عليها من أساسها)، لاحظ مثلاً بأن الرسائل التي تظهر على شكل بالون من قبل نظام التشغيل هي عادة رسائل ليست ذات أهمية، أما الرسائل الهامّة فيخرج علينا بيل غيتس ب message لها صوت مزعج ومرعب... خلاصة القول، البالون جميل ولكنه يجب أن لا يعتمد عليه في الأمور الهامة التي نريد ان نبلغها للمستخدم.

وسبب عدم التعويل هو أن هذه ال balloons يستطيع المستخدم منع الجهاز من إظهارها، يحتاج المستخدم فقط إلى عمل value في الريجستري بإسم EnableBalloonTips ووضعها في المفتاح:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced

لا بد من إعادة تشغيل الجهاز أو عمل log off حتى يظهر تأثير ال value الجديدة (قمت بعمل برنامج صغير للقيام بذلك وهو مرفق بإسم

kill_Ragheed_balloons :lol:

من أجمل وسائل إظهار الرسائل من وجهة نظري هي تلك التي يعتمدها النورتن، وقد أرفقت في المرفق أيضاً مثال بسيط لأوضح ما أقصد، هي يظهر لك form يبدو أن يظهر من تحت الكمبيوتر :-)، بتلك الصورة تضمن بأن المشاهد سيرى رسالتك (وتستطيع أن تضع تايمر عليه يغلقه تلقائياً بعد فترة ليحاكي ال balloons إن لم تكن الرسالة بتلك الأهمية للمستخدم).

arabteam.zip

Learn Japanese :>>> http://www.nouben.com/

#5

نسيت أن أرفق البرنامج الذي يحاكي عمل رسائل النورتن (مرفق في هذه المشاركة)، وأيضاً يوجد خطأ صغير في برنامجkill_Ragheed_balloons، فعندما يقوم المستخدم بإعادة تشيغل الجهاز أو عمل log off فلن يتم تفعيل زر enable XP balloons، يمكن إصلاح ذلك من البرنامج الذي أرفقته أو حذف القيمة EnableBalloonTips من الريجستري حتى يتم تفعيل البالون.

Reminder.zip

Learn Japanese :>>> http://www.nouben.com/

#6

أخي العزيز رغيد الطيب

مرحبا بك , وكما عودتنا دائما بمواضيعك القيمة من المنتدى المرحوم Vb4arab وأخيرا سيستفيد هذا المنتدى منك .

سؤال هوا عن سبب غياب مشاركاتك هنا.

#7

اخي الكريم رغيد الطيب الحقيقية تقنية حديثة و مميزة ..و نحن بحاجة للأشياء الجديدة التي تبدعها و لا يسبقك احد عليها..فعلا

شيء رائع و أهم شيء الثبات الذي يتمتع به و كأنه برنامج رسمي ..هذا هو عالم .Net

يا جماعة هل انا الوحيد الذي يعاني من صعوبة في فهم الكود .. ^.^

#8

موضوع جميل ونقاش رائع عن نفسي فقد بدأت بإستخدام البالون ولكن عن طريق مكتبة XPCommonControls.dll وما يمكيز هذه المكتبة هو إمكانية اظهار البالون على كنترول معين وكذلك فإني أستخدم شريط الحالة في بعض الاحيان Status bar

#9

هههههههه يا اخوان الفاتحة على روح المرحوم Vb4arab (كان منتدى كويس)

اخي W3Developer هل من الممكن تسرح لنا الاداة التي تستخدمها؟؟

تعلم:كيف تشغل برنامجك (قبل) ما يشتغل ال explorer, مثل ال check desk في الوندوز 98 و me

اللهم عطر يومنا بالايمان وانر قلبنا بالقرآن ورزقنا من حيث لانحتسب واجعل لنا سكينة تطمئن بها روحنا واحفظنا من كل سوء اللهم بارك لنا في رجب وشعبان وبلغنا رمضان آمين يارب العالمين

ranneh.com

#10

بسم الله الرحمن الرحيم

السلام عليكم و رحمة الله وبركاته

لا يستحق الامر الشكر أخي العزيز NO BODY CAN BEAT ME ... كذلك اخي العزيز إياس اتمنى بالفعل ان يفيدك المثال بإذن الله تعالى.

مرحبا اخي العزيز فواز .. رحم الله منتدنا و جمع اعضاءه من جديد بإذنه سبحانه ... اما عن التأخير فهو السفر للعاصمة و لست امام جهازي كالعادة لهذا قل تواجدي في المنتدى للإسف الشديد... و صدقيني اخي الحبيب انني المستفيد الأول من وجودي في هذا المنتدى فمنتداً فيه شباب مثلكم و الله إن رغيدا كان احق من الاستفادة منه.

و اما عزيزي HMS لقد سرني كثيرا و جودك بيننا من جديد فقد مضى وقت طويل اخي على آخر مشاركة جمعتنا قبل غيابك عن المنتدى لتلك المدة التي حرمتنا فيها منك عزيزي و حمدا لله على عودتك لنا سالما بحمد الله تعالى.

و كذلك ملاحظتك الجميلة لقد حسبت حسابها بتصميم الاداه حيث انه لو لم يتم عرض البالون لأي سبب فإن الحدث BalloonShown لن ينفذ و بهذا يمكن لك كمبرمج ان تعرف ما إذا كان البالون قد عرض ام لا بعد تنفيذك للأمر ShowBalloon و يمكنك حينها إتخاذ اي اسلوب تراه مناسبا ... و يفضل دائما استخدام مربعات الحوار في حالة إنتظار إجابة من المستخدم مثل ( هل تريد إغلاق البرنامج بالفعل ؟ ) فتكون الإجابة فيها إما بالقبول او عدمه ... اما الرسائل التحذيرية فحبذا لو كانت اقل ازعاجا للمستخدم ( مجرد رأي شخصي ) فحتى نظام التشغيل يستخدم هذا الاسلوب في حالات ربما تكون خطرة مثلا يعرض النظام رسالة تنبيه بشكل بالون وليس مربع حوار ( في حالة ضعف حماية الحاسوب لعدم وجود جدار ناري او برنامج مكافح للفيروسات او ماشابه على الرغم من كون الامر فيه شيء من الخطورة ) ... و لكن هذا لا يمنع كون اتخاذنا لأساليب عرض خاصة بنا هو امر لذيذ للغاية لهذا اؤيدك كثيرا في الاسلوب الجميل الذي تتبعه اخي و اذا توفر الوقت الكافي بإذن الله تعالى سأناقش اساليب اخرى اضافية كنت اعتمد عليها كثيرا و لا يوجد مانع من ان نقوم بتصميم البالون نفسه برمجيا بحيث نعرضه نحن كنافذة تابعة لبرنامجنا بغض النظر عن نظام التشغيل نفسه و سيكون الجمال في كونها ستعمل بإذن الله تعالى حتى و إن لم يكن البالون مدعوما اصلا في نظام التشغيل كالملينيوم ... و اشكر لك ملاحظتك كثيرا اخي الكريم.

اخي الحبيب إياس المثال الموضوع هنا ليس ابتكارا انفردت به و لا يخفى على احدا هنا عزيزي اننا إلى الان مجرد مستخدمين للتقنية فلو وجدتني استخدم دالة معينة في بناء هذه الفئة فلا يتبادر الى ذهنك اخي الحبيب انني فعلت ما لم يفعل و إنما استخدمت ( مجرد مستخدم ) لهذة الدالة او تلك و التي برمجها غيري ( مبرمجي مايكروسوفت الذين طوروا لن هذه البيئة الرائعة ) و هي مجرد فكرة طرأت برأسي و الحمد لله الذي اتمها لي سبحانه ... و لو طال بنا العمر فإنني على ثقة بأن زمانا سيقدم ستجدنا نستخدم تقنيات صنعنها بإنفسنا بإذنه سبحانه ... قل آمين اخي

عزيزي W3Developer لم استخدم من قبل الاداه XPCommonControls.dll و لا اشك انها ستكون اجمل مما صنعت انا هنا و يمكنك القول بأنها مجرد عادة احبها و هي ان اقوم بالتسلية ببناء الافكار التي تروق لي و بالفعل لقد راقني كثيرا ان استخدم البالونات في نظام التشغيل.

اترككم في امان الله اخوتي اعانني الله و اياكم على صيام و قيام هذا الشهر و جعلنا من المستبقين للخيرات فيه انه هو السميع العليم.

السلام عليكم و رحمة الله و بركاته

تم تعديل هذه المشاركة بواسطة رغيد الطيب في 4 أكتوبر 2005 في 15:37

مواضيع برمجية تقنية جديدة

----------------------------------------------------------------------------------------------------------------------------------------------

• إستغلال خدمة الـ RSS في برامجنا ومواقعنا ! (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• برنامج للبحث في الملفات ومحتواياتها (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• فئة للتراسل بين برنامجين في جهاز واحد ! (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

مواضيع برمجية تقنية قديمة

----------------------------------------------------------------------------------------------------------------------------------------------

• إستغلال رسائل البالونات Balloons في الوينذوز أكس بي(VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• مقالة : لماذا يجب ان نعتني بشفرات برامجنا !؟- (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• لمطوري البرامج و مواقع الويب - برنامج تركيب ألوان - (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• برنامج : بسيط للتحكم بالنظام, عن طريق الريجستري - (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• برنامج : لتقييد و منع تشغيل البرامج الاخرى - (VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• النوافذ المنبثقة و طريقة لإستغلالها في برامجنا -(VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• تقنية الإستدعاء الذاتي - (VB.NET , VB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• مصفوفات الأدوات Control Arrays افكار وتلميحات ! - (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

• أفكار و تلميحات[ المعنى الحقيقي للـ True و False ] - أمثلة (VB.NETVB6.0)

----------------------------------------------------------------------------------------------------------------------------------------------

• دوال الـ APIs و مايقابلها في الدوت نت ! - (VB.NET)

----------------------------------------------------------------------------------------------------------------------------------------------

#12

بارك الله فيك أخي العزيز وأستاذي رغيد على التوضيح.

أنعم الله عليّ في هذه الفترة بإجازات متقطّعة وطويلة، لذلك أقضيها هنا بين الأخوة الأعزاء، فترة قصيرة وسنعود بعدها لمشاغل الحياة.

كل عام وأنت وبقية الأخوة بألف خير بمناسبة شهر الخير والبركات.

Learn Japanese :>>> http://www.nouben.com/

#13

اخواني الاعزاء بارك الله فيكم علي هذة المعلومات القيمة

اغي رغيد بارك الله فيك وجعلة في ميزان حسناتك

يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل

سبحان الله وبحمده ... سبحان الله العظيم

#14

مجهود رائع

هذه الخاصية موجدة فى VS.net 2005

Nothing to mention except that I am Muslim

Using your brain is not bad as you think

My Blog

logo.jpg

#16

مشكور . اخ رغد على هذا الموضوع .. ويستحق فعلاً.. البحث والمعرفة..

#17

يمكنكم تحميل XPCommanControls.dll من هذا الموقع وأنا هلا لا أدعو الى استخدام الادوات بدون فهم العمل الداخلي لها فالاخ رغيد أعطانا بعض الافكار وعلينا تطويرها

نسيت أن أذكر أن المقع يعطيك الكثير من الادوات + السورس كود الخاص بها مجانا للإستخدام الشخصي فقط

http://www.steepvalley.net/

#18

والله انت عضو رائع وتستحق كل الاحترام والتقدير

#19

السلام عليكم

شكرا اخي رغيد على هذا الابداع

ولكن هل هناك طريقة لعمل مثل هذا Balloons في فيجول بيسيك 6 هذا وشكرا لكم

#20

أخي رغيد في النسخة 2005 موجودة هذه الأداة جاهزة وهي ToolTip بإمكانك أن تحولها إلى Balloon هذا للتنبيه فقط بدلا من إضافة أداة خارجية

يا أيها الناس قولو لا إله إلا الله تفلحوا وتملكوا بها العرب وتذل لكم العجم وإذا آمنتم كنتم ملوكا في الجنة

#21

السلام عليكم عفواً أعزائي أنا كنت أبحث عن طريقة عرض البالون منذ مدة

يمكن استخدامها في اصلاح الأخطاء أثناء الإدخال والتنبيه عند كتابة حروف مكان أرقام أو ما شابه.

لقد قمت بتحميل الفئة ولكن أتمنى أن استطيع استعمالها بدون Notify icon أريدها أن تظهر في Textbox مثلا

وشكراً للأخ neo على التنبيه أنها توجد في 2005 ولكن أين هي وهل توجد في express ؟

**************************************************************************

مواضيعي المتواضعة :

/index.ph...=118199&hl=

أداة لعمل أزرار أكثر تفاعلية في تطبيقاتك - استخدام الأداة HoverButton

------------

/index.ph...=117981&hl=

تصميم بسيط بالفوتوشوب - تصميم بسيط بالفوتوشوب (كرت) مع ملف المصدر PSD

------------

/index.ph...=118145&hl=

فيديو - انشاء أداة مخصصة ضمن المشروع من دون DLL - الرجاء النقد إذا كان هناك ما يستحق النقد - وذلك للإفادة

**

أسئلتي واستفساراتي :

/index.php?showtopic=118259

هل أستطيع عمل منظومة بـ VB.NET 2005 EXPRESS و CrystalReport 10

==========

<Bothemania>

==========

**************************************************************************

#22

بعد الاذن من الأخ رغيد الطيب..

نعم توجد.. أنظر الصورة وستعرف أين.. انها الأداة التي قد تم اختيارها.. مع ملاحظة أنها لا تظهر الا بعد اختيار أيقونة لها

NotifyIcon.rar

تم تعديل هذه المشاركة بواسطة M0OATH في 27 يناير 2007 في 12:50

M0oATH

اقتباس
وكم من طالب غلب أستاذه

#23

عفواً ...

لقد وجدت الأداة في 2005

ولكن مازلت ابحث عن طريقة في 2003 تمكنني من عرض هذا البالون من دون Notify icon يعني على TextBox مثلا.

شكر جزيل للأخ M0OATH ولكن أنا أقصد البالون وليس Notify Icon أم للـ Notify icon بالون أيضا أو كيف؟ أضن أنني متلخبط

تم تعديل هذه المشاركة بواسطة Bothemania في 27 يناير 2007 في 12:59

**************************************************************************

مواضيعي المتواضعة :

/index.ph...=118199&hl=

أداة لعمل أزرار أكثر تفاعلية في تطبيقاتك - استخدام الأداة HoverButton

------------

/index.ph...=117981&hl=

تصميم بسيط بالفوتوشوب - تصميم بسيط بالفوتوشوب (كرت) مع ملف المصدر PSD

------------

/index.ph...=118145&hl=

فيديو - انشاء أداة مخصصة ضمن المشروع من دون DLL - الرجاء النقد إذا كان هناك ما يستحق النقد - وذلك للإفادة

**

أسئلتي واستفساراتي :

/index.php?showtopic=118259

هل أستطيع عمل منظومة بـ VB.NET 2005 EXPRESS و CrystalReport 10

==========

<Bothemania>

==========

**************************************************************************

#24

الأداة NotifyIcon.. هي أداة تظهر أسفل الشاشة بجوار الساعة.. تستخدمها كثير من البرامج لاظهار التنبيهات ولعمل ذلك:

		'النص
		NotifyIcon1.BalloonTipText = TextBox1.Text

		'العنوان
		NotifyIcon1.BalloonTipTitle = "					 تحذير"

		'الأيقونة
		NotifyIcon1.BalloonTipIcon = ToolTipIcon.Error

		'عدم عرض البالون اذا كان النص فارغا.. لأنه ينتج عن ذلك عطل
		If NotifyIcon1.BalloonTipText <> "" Then

			'عرض البالون لمدة 2000 ميلي.. أي لمدة ثانيتين
			NotifyIcon1.ShowBalloonTip(2000)

		End If

شاهد المثال.

اقتباس
لقد وجدت الأداة في 2005

ما هي الأداة التي عثرت عليها؟؟

ختاما.. تستطيع أيضا اضافة قائمة للأداة كما في الصورة.. لاستخدامات عدة.. كما في البرامج الأخرى.. ورجاء أخبرنا اذا عرفت كيفية اضهار بالون في TextBox مثلا ;)

WindowsApplication1.rar

Menu.bmp

M0oATH

اقتباس
وكم من طالب غلب أستاذه

#25
اقتباس
ما هي الأداة التي عثرت عليها؟؟

عفواً وجدة أداة tool tip حيث أنني في 2005 أستطيع تغيير الخاصية IsBalloon لتصبح بالون

اقتباس
ورجاء أخبرنا اذا عرفت كيفية اضهار بالون في TextBox مثلا

لقد فعلت ذلك بالأمس

أدرج Textbox وأدرج Tool tip

أضبط الخاصية tooltip in tool tip 1 على النص الي تريده أن يظهر

تقريبا هكذا. سوف أتأكد لاحقا ماعند 2005 في الجهاز اللي أكتب منه توا.

**************************************************************************

مواضيعي المتواضعة :

/index.ph...=118199&hl=

أداة لعمل أزرار أكثر تفاعلية في تطبيقاتك - استخدام الأداة HoverButton

------------

/index.ph...=117981&hl=

تصميم بسيط بالفوتوشوب - تصميم بسيط بالفوتوشوب (كرت) مع ملف المصدر PSD

------------

/index.ph...=118145&hl=

فيديو - انشاء أداة مخصصة ضمن المشروع من دون DLL - الرجاء النقد إذا كان هناك ما يستحق النقد - وذلك للإفادة

**

أسئلتي واستفساراتي :

/index.php?showtopic=118259

هل أستطيع عمل منظومة بـ VB.NET 2005 EXPRESS و CrystalReport 10

==========

<Bothemania>

==========

**************************************************************************

هذا الموضوع مغلق.

مواضيع مشابهة