تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
استفسار بالنسبة للحدث MouseLeave والحدث MouseMove
#11
اخى سعود ارجو منك تحميل الملف المرفق فى مشاركتى السابقة لفهم قصدى وجزاك الله خير

اخوانى ارجو المساعدة بارك الله فيكم
الرد }}}
تم الشكر بواسطة:
#12
شفت المثال لكن قصدي ان تستبدل حدث leave بحدث enter لكل الادوات ...حتى يتم النظر الى المشكلة من نفس microsoft او اي واحد يستطيع تطبيق الفكرة بنفس الحدثين.
الرد }}}
تم الشكر بواسطة:
#13
جزاك الله خير اخى سعود
لاكن والله مش فاهم قصدك
ارجو التوضيح

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

ما قصده الأخوة هو الجزء الذي يظهر باللون الأحمر في الكود التالي

كود :
Public Class Form1

    Private Sub Form1_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove[color=#FF0000], Button1.MouseMove[/color]
        Me.Opacity = 1
    End Sub

    Private Sub Form1_MouseLeave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.MouseLeave
        Me.Opacity = 0.5
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Opacity = 0.5
    End Sub
End Class

الآن لو قمت باستبدال الكود الموجود في مثالك المرفق بهذا الكود لما ظهرت المشكلة التي ذكرتها وهي
إقتباس :اقف على الزر بالموس يعتبر انك خرجت من على الفورم مع انك لم تخرج

بالتوفيق
الرد }}}
تم الشكر بواسطة:
#15
جزاك الله خير وجعله فى موازين حسناتك
انا لا اريد اضافة حدث الزر الى الصب لان المكونات التى سيتم وضعها على الفورم كثير
الرد }}}
تم الشكر بواسطة:
#16
طيب عندى فكرة لاكن مش عارف انفذها
مراقبت الموس اذا كان داخل المشروع ينفذ امر معين اذا كان خارج المشروع ينفذ امر اخر
الرد }}}
تم الشكر بواسطة:
#17
ali.alfoly كتب :طيب عندى فكرة لاكن مش عارف انفذها
مراقبت الموس اذا كان داخل المشروع ينفذ امر معين اذا كان خارج المشروع ينفذ امر اخر

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

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

بالتوفيق
الرد }}}
تم الشكر بواسطة:
#18
السلام عليكم ورحم الله وبركاته
تفضل أخي الحبيب هذا هو الكود
فقط قم بنسخه واستبدل جميع الكود في مثالك

كود :
Public Class Form1
    Public Declare Auto Function GetCursorPos Lib "User32.dll" (ByRef lpPoint As Point) As Long
    Dim MouseMonitor As New System.Threading.Thread(AddressOf MouseMonitoring)
    Private Event MouseIn(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
    Private Event MouseOut(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
    Delegate Sub SetCallback(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
    Private Sub MouseMonitoring()
10:
        Dim MousePosition As New Point
        GetCursorPos(MousePosition)
        Dim FormFrameWidth As Integer = (Me.Width - Me.ClientSize.Width) / 2
        Dim FormTitleHeight As Integer = Me.Height - Me.ClientSize.Height - FormFrameWidth
        Dim CurrentX As Integer = MousePosition.X - Me.Left - FormFrameWidth
        Dim CurrentY As Integer = MousePosition.Y - Me.Top - FormTitleHeight
        Dim e As New System.Windows.Forms.MouseEventArgs(Nothing, 0, MousePosition.X, MousePosition.Y, 0)
        If CurrentX >= 0 AndAlso CurrentX < Me.ClientSize.Width Then
            If CurrentY >= 0 AndAlso CurrentY < Me.ClientSize.Height Then
                RaiseEvent MouseIn(Me, e)
            Else
                RaiseEvent MouseOut(Me, e)
            End If
        Else
            RaiseEvent MouseOut(Me, e)
        End If
        System.Threading.Thread.Sleep(100)
        GoTo 10
    End Sub
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        MouseMonitor.Abort()
    End Sub
    Sub Form1_MouseIn(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseIn
        If Me.InvokeRequired Then
            Dim Callback As New SetCallback(AddressOf Form1_MouseIn)
            Me.Invoke(Callback, New Object() {sender, e})
        Else
            'هنا يتم وضع الكود
            Me.Opacity = 0.5
        End If
    End Sub
    Sub Form1_MouseOut(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseOut
        If Me.InvokeRequired Then
            Dim Callback As New SetCallback(AddressOf Form1_MouseOut)
            Me.Invoke(Callback, New Object() {sender, e})
        Else
            'هنا يتم وضع الكود
            Me.Opacity = 1
        End If
    End Sub
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        MouseMonitor.Start()
    End Sub
End Class

بالتوفيق
الرد }}}
تم الشكر بواسطة:
#19
يجب أن تضع للبعض سمعات قبل إعطائها إلى sooriaty03 مرة أخرى.
بالفعل مبدع اخى sooriaty03

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

اخى ali.alfoly
ضع Timer على الفورم وضع اى ادوات تريدها على الفورم
وفى حدث Timer1_Tick ضع هذ الكود

PHP كود :
Dim p As Point Control.MousePosition
        Dim frm 
As Boolean p.>= Left AndAlso p.>= Top AndAlso p.Right AndAlso p.Bottom
        Me
.BackColor = If(frmColor.RedColor.Blue

وفى حدث ال Form1_Load ضع هذا الكود

PHP كود :
Timer1.Start() 

جرب واخبرنى بالنتيجه

وبالتوفيق ان شاء الله
"الناس نيام فإذا ماتوا إنتبهوا"
الرد }}}
تم الشكر بواسطة:
#20
learning.net كتب :يجب أن تضع للبعض سمعات قبل إعطائها إلى sooriaty03 مرة أخرى.
بالفعل مبدع اخى sooriaty03

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

اخى ali.alfoly
ضع Timer على الفورم وضع اى ادوات تريدها على الفورم
وفى حدث Timer1_Tick ضع هذ الكود

PHP كود :
Dim p As Point Control.MousePosition
        Dim frm 
As Boolean p.>= Left AndAlso p.>= Top AndAlso p.Right AndAlso p.Bottom
        Me
.BackColor = If(frmColor.RedColor.Blue

وفى حدث ال Form1_Load ضع هذا الكود

PHP كود :
Timer1.Start() 

جرب واخبرنى بالنتيجه

وبالتوفيق ان شاء الله

[COLOR="#0000FF"]السلام عليكم ورحمة الله وبركاته


ما شاء الله عليك أخي إبراهيم
طريقتك والله أجمل من طريقتي
بارك الله فيك وجعله في ميزان حسناتك

بالتوفيق
[/COLOR]
الرد }}}
تم الشكر بواسطة:



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


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