ashraf قام بنشر يوليو 13, 2003 قام بنشر يوليو 13, 2003 في الوحدة النمطية العامة اكتب : Declare Function SetTimer Lib "user32" (ByVal hWnd _ As Long, ByVal nIDEvent As Long, ByVal uElapse _ As Long, ByVal lpTimerFunc As Long) As Long Declare Function KillTimer Lib "user32" _ (ByVal hWnd As Long, ByVal nIDEvent As Long) _ As Long Declare Function FindWindowEx Lib "user32" _ Alias "FindWindowExA" (ByVal hWndParent As _ Long, ByVal hWndChildAfter As Long, ByVal _ lpClassName As String, ByVal lpWindowName _ As String) As Long Declare Function Sendmessagebynum _ Lib "user32" Alias "SendMessageA" (ByVal _ hWnd As Long, ByVal wMsg As Long, ByVal _ wParam As Long, ByVal lParam As Long) _ As Long Const EM_SETPASSWORDCHAR = &HCC Public str_Title$, TimerId& Sub TimerProc(ByVal hWnd As Long, ByVal uMsg As Long, _ ByVal uElapse As Long, ByVal lpTimerFunc As Long) KillTimer 0, TimerId Dim lng_Hwnd& lng_Hwnd = FindWindowEx(0, 0, "#32770", _ Trim(str_Title)) lng_Hwnd = FindWindowEx(lng_Hwnd, 0, _ "Edit", vbNullString) If lng_Hwnd Then Sendmessagebynum lng_Hwnd, EM_SETPASSWORDCHAR, 42, 0 End If End Sub وفي حدث عند نقر زر أمر اكتب : TimerId = SetTimer(0, 0, 1, AddressOf TimerProc) str_Title = "كلمة المرور مطلوبة" str_Prompt = "ادخل كلمة المرور" MsgBox InputBox(str_Prompt, str_Title) الكود السابق تظهر الكلمة بعد كتابتها في رسالة Msgbox وهذا فقط للاختبار ، أما إذا أردت وضع قيمة شرطية لعمل إجراء ما حسب الكلمة المدخلة فكالتالي : TimerId = SetTimer(0, 0, 1, AddressOf TimerProc) str_Title = "كلمة المرور مطلوبة" str_Prompt = "ادخل كلمة المرور" If InputBox(str_Prompt, str_Title) = "كلمة" Then ' اكتب هنا الإجراءات إذا كانت الكلمة صحيحة Else ' اكتب هنا الإجراءات إذا كانت الكلمة غير صحيحة End If غير "كلمة" بكلمة السر لديك . ************************ مع تحيات صفحة ابو حمود 1
الردود الموصى بها