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

تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox

اذهب الى الأسفل

تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox Empty تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox

مُساهمة من طرف المبرمج الطموح الأربعاء سبتمبر 18, 2013 11:03 am

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

نص التلميح ToolTip هو النص الذى يظهر عند وقوفك بالماوس على عنصر ما ويمكنك أنشاءة من خلال الخاصية ToolTipText لاى عنصر تحكم .....لكن اذا استخدمت تلك الطريقة مع عنصر التحكم listbox فسوف يظهر النص لعنصر التحكم ككل ....أما اذا اردت أن يظهر نص التليمح لكل عنصر من عناصر listbox فانك بحاجة الى متابعة الخطوات التالية :

_ فى قسم التصريحات العامة نكتب الكود التالى :

الكود:

Private Type POINTAPI
    X As Long
    Y As Long
End Type

Private Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, lpPoint As POINTAPI) As Long
Private Declare Function LBItemFromPt Lib "COMCTL32.DLL" (ByVal hLB As Long, ByVal ptX As Long, ByVal ptY As Long, ByVal bAutoScroll As Long) As Long

Private m_TooltipText() As String
_ بعد ذلك نقوم بكتابة وظيفية للحصول على فهرس أو رقم index لكل عنصر من عناصر listbox الذى تقف عليه الماوس الان و ذلك على النحو التالى :

الكود:
Public Function ItemUnderMouse(ByVal list_hWnd As Long, ByVal X As Single, ByVal Y As Single)
Dim pt As POINTAPI

    pt.X = X \ Screen.TwipsPerPixelX
    pt.Y = Y \ Screen.TwipsPerPixelY
    ClientToScreen list_hWnd, pt
    ItemUnderMouse = LBItemFromPt(list_hWnd, pt.X, pt.Y, False)
End Function
_ فى حدث التحميل للنافذة نقوم بكتابة الكود التالى و الذى يقوم بتخزين نصوص التليمح فى المتغير النصى m_TooltipText المراد اظهارها لكل عنصر حسب الرقم المفهرس على النحو التالى :

الكود:
Private Sub Form_Load()
    ReDim m_TooltipText(-1 To List1.ListCount - 1)
    m_TooltipText(-1) = "Select an item"
    m_TooltipText(0) = "Apple fritters"
    m_TooltipText(1) = "Banana pie"
    m_TooltipText(2) = "Cherriers jubilee"
    m_TooltipText(3) = Date
    m_TooltipText(4) = "Ribbet"
    m_TooltipText(5) = ""
    m_TooltipText(6) = "Sorry, no help for you!"
End Sub
_ فى حدث List1_MouseMove نكتب الكود التالى و الخاص باظهار نص التلميح عند مرور الماوس على العنصر على النحو التالى :

الكود:
Private Sub List1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    List1.ToolTipText = m_TooltipText(ItemUnderMouse(List1.hwnd, X, Y))
End Sub
و النتيجة كما فى الشكل التالى :

تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox 849690657
المبرمج الطموح
المبرمج الطموح
الاشراف
الاشراف

تاريخ التسجيل : 18/02/2011
المساهمات : 207
النقاط : 368
التقيم : 17
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox Empty رد: تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox

مُساهمة من طرف أحمد مناع الثلاثاء نوفمبر 19, 2013 1:08 pm

أشكرك أخى الكريم على مقالاتك القيمة

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
أحمد مناع
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 1108
النقاط : 202034
التقيم : 144
الدولة : مصر
الجنس : ذكر

https://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox Empty رد: تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox

مُساهمة من طرف ahmedismayl الأحد يناير 19, 2014 4:15 pm

الاخوه الاعضاء سؤال لو سمحتو كثيرا ما يراودنى
اولا انا مبتدا كما قولت من قبل
والسؤال
هل المبرمج عليه ان يعلم كل هذه الاكواد ويفهمها ويحفظها عن ظهر قلب 
ام ان هناك عمليات كامله تتم بنسخ الكود ولصقه فى المكان الصحيح فى المشروع كمثل هذه الاكواد الخاصه بالتلميح

لانى كمبدا يحدث لى رهبه من كثرة هذه الاكواد مما يشعرنى بالهزيمه امامها حيث انى لا افهمها 

فهل هذا الاحساس طبيعى ولا اهتم به واركز فقط على الاكواد المباشرة لعملى وهدفى اما ماذا 

ارجو الرد - فكثيرا ما يصيبنى الاحباط امام هذا الكم من الاكواد والتى اجد انه من المناسب تجاهلها وأأخذها نسخ ولصق 

ارجو الرد
ahmedismayl
ahmedismayl
..
..

تاريخ التسجيل : 15/01/2014
المساهمات : 24
النقاط : 30
التقيم : 0
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox Empty رد: تعلم كيفية انشاء نص تلميح ToolTipText لكل عنصر من عناصر listbox

مُساهمة من طرف NEXT الإثنين يناير 20, 2014 7:23 am

ahmedismayl كتب:الاخوه الاعضاء سؤال لو سمحتو كثيرا ما يراودنى
اولا انا مبتدا كما قولت من قبل
والسؤال
هل المبرمج عليه ان يعلم كل هذه الاكواد ويفهمها ويحفظها عن ظهر قلب 
ام ان هناك عمليات كامله تتم بنسخ الكود ولصقه فى المكان الصحيح فى المشروع كمثل هذه الاكواد الخاصه بالتلميح

لانى كمبدا يحدث لى رهبه من كثرة هذه الاكواد مما يشعرنى بالهزيمه امامها حيث انى لا افهمها 

فهل هذا الاحساس طبيعى ولا اهتم به واركز فقط على الاكواد المباشرة لعملى وهدفى اما ماذا 

ارجو الرد - فكثيرا ما يصيبنى الاحباط امام هذا الكم من الاكواد والتى اجد انه من المناسب تجاهلها وأأخذها نسخ ولصق 

ارجو الرد


الموضوع ليس حفظ الاكواد وانمها فهمها ....و طالما انت فهمت الكود يمكنك استخدمة باى طريقة لتؤدى نفس الغرض ....فمثلا من المعروف أنه لمسح قيمة مربع النص يتم استخدام الكود التالى :

الكود:
Text1.Text = ""

وتخيل لو لديك أكثر من 5 مربعات نص فإن كنت حافظ الكود ستقوم بكتابة على النحو التالى :

الكود:
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""

وهنا افترض ان عدد مربعات النصوص 6 فقط تخيل لو كانت 20 مربع نص مثلا ....لكنك يمكنك استخدام سطرين أو ثلاثة على الاكثر لمسح جميع مربعات النص اللى موجودة على النموذج على النحو التالى :

الكود:
Dim obj As Control
For Each obj In Me
If TypeOf obj Is TextBox Then
obj.Text = ""
End If
Next obj

اذن المطلوب فهم الكود ومن ثم تقوم بتنفيذة بالطريقة التى تعجبك

NEXT
NEXT
الادارة
الادارة

تاريخ التسجيل : 18/02/2011
المساهمات : 446
النقاط : 200660
التقيم : 28
الدولة : مصر
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى