تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] وش عمل هذه الكلمة handle
#4
(22-07-15, 06:00 AM)الشاكي لله كتب : Handle المفروض تستعمل لجلب رقم مميز يشير الى GUI الذي تريد جلبه
الرقم يكون في العادة بهذا الشكل (13495631)

لكن في حالتك يبدو ان مصمم الكلاس يتفلسف فكيف ان Handle ترجع قيمة نصية !!!!
لان Handle ترجع قيمة من رقمية وليست نصية

ههههههههههههههههههه ضحكتني ( لكن في حالتك يبدو ان مصمم الكلاس يتفلسف فكيف ان Handle ترجع قيمة نصية !!!! )

ههههههههههههههه 

شكله صدق يتفلسف لنه الي قاعد اقراه غير عن عمل هاذا الكلمة في هاذا الكود

على العموم الله يعطيك العافيه ماقصرت

(22-07-15, 11:19 AM)silverlight كتب : Handle عبارة عن IntPtr وغالبا معطم DataTypes التالية يمكن تحويلها الي IntPtr :

System.Char
System.Int8
System.UInt8
System.Int16
System.UInt16
System.Int32
System.UInt32
System.Int64
System.UInt64
System.UIntPtr

غالبا من كتب الكود له هدف معين لإستخدام هذا الأسلوب لإسترجاع بيانات محددة خاصة ب Com Objects
و تقريبا و الله أعلم من كتب الكلاس بهذا الأسلوب يسترجع شئ اسمه  binary interface أو بمعني أدق C++ interface

الدالة التالية توضح كيفية تحويل System.Char الي IntPtr

كود :
Friend Function GetIntPtr(value As Object) As IntPtr
    Select Case value.GetType().FullName
        Case "System.Char"
            Return New IntPtr(AscW(CChar(value)))
    End Select
    Throw New ArgumentException("value")
End Function


وهذه دالة تقوم بتحويل String الي IntPtr

كود :
  Friend Function StringToIntPtr(str As String) As IntPtr
       Dim ptr As IntPtr = CType(Nothing, IntPtr)
       ptr = System.Runtime.InteropServices.Marshal.StringToHGlobalUni(str)
       Return ptr
   End Function
وهذه دالة اخري تقوم بتحويل IntPtr الي String


كود :
   Friend Function IntPtrToString(ptr As IntPtr) As String
       Dim result As String = System.Runtime.InteropServices.Marshal.PtrToStringUni(ptr)
       Return result
   End Function


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



كود :
Friend Sub FreeMemory(ptr As IntPtr)
       System.Runtime.InteropServices.Marshal.FreeHGlobal(ptr)
   End Sub


و الكود التالي يوضح كيفية استخدام الكود



كود :
       Dim str As String = "Visual Basix For Arab"
       Dim ptr As IntPtr = CType(Nothing, IntPtr)

       ' change string to IntPtr
       ptr = StringToIntPtr(str)

       ' change Intptr to String
       Dim txt As String = IntPtrToString(ptr)

       ' According to MSDN must free unmanaged memory block
       FreeMemory(ptr)

ماقصرت يا الغالي شرحت الكود وزيادة


الله يعطيك العافيه ماقصرت
الحمد لله رب العالمين على كل شي
الرد }}}
تم الشكر بواسطة: مبرمج بلا حدود


الردود في هذا الموضوع
وش عمل هذه الكلمة handle - بواسطة hassan - 22-07-15, 05:04 AM
RE: وش عمل هذه الكلمة handle - بواسطة hassan - 22-07-15, 05:26 PM
RE: وش عمل هذه الكلمة handle - بواسطة silverlight - 22-07-15, 11:19 AM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  أريد البحث بإستخدام أي جزء من الكلمة و ليس أول جزء منها . CoderMM 3 619 17-04-24, 01:19 AM
آخر رد: Taha Okla
Heart [سؤال] السلام علام مطلوب طريقة التحقق من كول الكلمة المتكرار في اليسة بوكس وضعها في التيكس ب Ali 2020 0 1,443 01-10-20, 12:38 AM
آخر رد: Ali 2020
  كيف اجعل الكلمة في Textbox شفافة VBMaged 15 7,458 07-04-20, 05:23 PM
آخر رد: waelmohd
  طلب كود يقوم مقام (دبل كليك).. وكود للانتقال إلى الكلمة التالية في النص waelalmsry75 2 1,674 31-01-20, 03:54 AM
آخر رد: waelalmsry75
  Error creating window handle اسامه الهرماوي 3 3,977 09-10-19, 12:57 AM
آخر رد: اسامه الهرماوي
  [VB.NET] بحث عن الكلمة وتلوينها بالداتاجريدفيو محمد اسماعيل 3 1,920 19-05-19, 04:21 AM
آخر رد: محمد اسماعيل
  مساعدة في جعل الإستعلام يبحث عن جزء من الكلمة Hamoody 5 2,452 27-01-19, 09:23 PM
آخر رد: Hamoody
  مشكلة في حفظ اعدادات البرنامج My.Setting ... بيحفظ الكلمة الأولي فقط . DanyGhost2010 11 4,812 30-12-17, 10:31 PM
آخر رد: طالب برمجة
  [كود] ScreenToClient(PictureBox1 .Handle, mPos) أسامة 1 2,208 13-11-15, 12:35 AM
آخر رد: أسامة
  طلب بحث باي جزء من الكلمة المهنا 17 7,732 06-11-14, 12:19 AM
آخر رد: saif_s80

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم