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

التحكم فى مكونات برنامج اخر بــ API

بدأه سلمى محمد في 31 أكتوبر 2013 · 0 رد · 800 مشاهدة · في قسم تكنولوجيا Microsoft .NET العام
مشاركة: واتساب X فيسبوك تيليجرام
#1

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

مساعدة فى فى التحكم فى ادوات البرنامج من خلال دوال api 

استخدم هذا الكود

Public Class Form2
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
    Declare Auto Function GetWindowText Lib "user32" (ByVal hWnd As IntPtr, ByVal lpString As System.Text.StringBuilder, ByVal nMaxCount As Integer) As Integer
    Declare Auto Function GetWindowTextLength Lib "user32" (ByVal hWnd As IntPtr) As Integer
    Public Delegate Function funcCallBackParent(ByVal hWnd As IntPtr, ByVal lParam As IntPtr) As Boolean
    Friend Declare Function EnumChildWindows Lib "User32" (ByVal hWndParent As IntPtr, ByVal funcCallBack As funcCallBackParent, ByVal lParam As IntPtr) As Boolean
    Declare Function ShowWindow Lib "user32" (ByVal hwnd As Integer, ByVal nCmdShow As Integer) As Integer
    Declare Auto Function SetWindowText Lib "user32" (ByVal hWnd As IntPtr, ByVal Text As String) As Boolean
    Public Declare Function EnableWindow Lib "user32.dll" (ByVal hWnd As Long, ByVal fEnable As Long) As Long
    Public Const EW_Enable = 1
    Public Const EW_DISABLE = 0
    
    Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    End Sub
    Public Function EnumChildProc(ByVal hwnd As Long, ByVal lParam As Long) As Long

        Dim Str As New System.Text.StringBuilder

        Str.Capacity = GetWindowTextLength(hwnd) + 1

        GetWindowText(hwnd, Str, Str.Capacity)

        ListBox1.Items.Add(Str.ToString)

        EnumChildProc = 1

        ShowWindow(hwnd, 0)

    End Function


    Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
        ListBox1.Items.Clear()
        If CheckBox1.Checked = True Then

            Timer1.Enabled = True

            else

        End If

    End Sub
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

        If CheckBox1.Checked = True Then

            TextBox1.Text = FindWindow(Nothing, "frm_cd")

            EnumChildWindows(TextBox1.Text, AddressOf EnumChildProc, IntPtr.Zero)

            Timer1.Enabled = False

        End If

    End Sub
End Class

هذا كود يقوم بقراءة النافذة عنوانها frm_cd

 

ويظهر جميع ادواتها فى listbox 

ويخفى جميع الادوات من خلال 

ShowWindow(hwnd, 0)

 
اريد مساعدة فى استخدام دالة Windowsenable بدلا من ShowWindow لتفعيل جميع ادوات الفورم بدلا من أخفاءها 

تم تعديل هذه المشاركة بواسطة سلمى محمد في 31 أكتوبر 2013 في 21:52

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…