تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
استفسار عن تغير خلفيه المشروع
#21
معلش تعبتك معايا بس الحاجه دي مهمه بالنسبه ليه و مشكور مره اخري Smile
الرد }}}
تم الشكر بواسطة:
#22
nin9e كتب :تمام اخي اشتغلت طيب و لو انا عاوز اول ما اختار اللون يطبق علطول مفضلش ادوس في كود ل كده؟

بسهولة نستخدم أداة الTimer

في المشاريع ال3

اما المشروع الاساسي لاتغير فيه
الرد }}}
تم الشكر بواسطة:
#23
طيب وفي كود للتيمر؟؟
الرد }}}
تم الشكر بواسطة:
#24
^

نحط الكود الموجود حاليا في button1Big Grin

في حدث timer_tick
الرد }}}
تم الشكر بواسطة:
#25
شكرا لهذا الصبر الوفير و المجود الرائع معلش بقي خبرتي قليله Smile وشكرا مره اخري علي مشركتك انت والاخ 3body
الرد }}}
تم الشكر بواسطة:
#26
ممكن اضع طريقة أخرى

الطريقة باستخدام PostMessage

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

يوجد كودين، واحد لارسال الرسالة والآخر لاستقبال الرسالة

كود ارسال الرسالة: يكون في البرنامج اللي بيتحكم في البرنامج الآخر
كود :
Const WM_USER = &H400
Private Declare Function PostMessage Lib "user32.dll" Alias "PostMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
<Runtime.InteropServices.DllImport("user32.dll", SetLastError:=True, CharSet:=Runtime.InteropServices.CharSet.Auto)> _
Private Shared Function FindWindow(ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
End Function


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Dim myColorDialog As New ColorDialog
    If myColorDialog.ShowDialog = Windows.Forms.DialogResult.OK Then
        Dim hwnd As Integer = FindWindow(vbNullString, "عنوان نافذة البرنامج الهدف")
        If hwnd <> 0 Then
            PostMessage(hwnd, WM_USER, myColorDialog.Color.ToArgb, 0)
        End If

    End If

End Sub

كود استقبال الرسالة: ويكون في البرامج اللي تستقبل الرسالة وتنفذ العملية اللي تريدها
كود :
Const WM_USER = &H400
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
    Select Case m.Msg
        Case WM_USER
            Me.BackColor = Color.FromArgb(m.WParam)

    End Select
    MyBase.WndProc(m)
End Sub

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

الطريقة باستخدام PostMessage

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

يوجد كودين، واحد لارسال الرسالة والآخر لاستقبال الرسالة

كود ارسال الرسالة: يكون في البرنامج اللي بيتحكم في البرنامج الآخر
كود :
Const WM_USER = &H400
Private Declare Function PostMessage Lib "user32.dll" Alias "PostMessageA" (ByVal hwnd As Integer, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
<Runtime.InteropServices.DllImport("user32.dll", SetLastError:=True, CharSet:=Runtime.InteropServices.CharSet.Auto)> _
Private Shared Function FindWindow(ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
End Function


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Dim myColorDialog As New ColorDialog
    If myColorDialog.ShowDialog = Windows.Forms.DialogResult.OK Then
        Dim hwnd As Integer = FindWindow(vbNullString, "عنوان نافذة البرنامج الهدف")
        If hwnd <> 0 Then
            PostMessage(hwnd, WM_USER, myColorDialog.Color.ToArgb, 0)
        End If

    End If

End Sub

كود استقبال الرسالة: ويكون في البرامج اللي تستقبل الرسالة وتنفذ العملية اللي تريدها
كود :
Const WM_USER = &H400
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
    Select Case m.Msg
        Case WM_USER
            Me.BackColor = Color.FromArgb(m.WParam)

    End Select
    MyBase.WndProc(m)
End Sub

كيف الفكرة إن شاء الله سهلة ومفيدة.


وبعد اقول 10 / 10
الرد }}}
تم الشكر بواسطة:
#28
الشاكي لله كتب :وبعد اقول 10 / 10

بارك الله فيك، والله إنك ترفع المعنويات، أشكرك
الرد }}}
تم الشكر بواسطة:



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


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