| |||
![]() Quiciera que me ayudaran tengo un inputbox donde digito una clave, pero quiciera que los caracteres no aparecieran sino unos asteriscos o otros caracteres. Espero me puedan colaborar. |
| |||
Respuesta: Ocultar Caracteres de Inputbox |
| |||
Respuesta: Ocultar Caracteres de Inputbox No definitivamente no me funciono. Por favor pido que me expliquen por que soy muy novato y la verdad no he podido. Última edición por juancarlosto; 15/01/2012 a las 19:49 |
| ||||
Respuesta: Ocultar Caracteres de Inputbox Hola, no es que no podamos colaborar, es que sinceramente me veo incapaz de explicarlo mejor que en el enlace, que por otra parte como te comentaba lo probé y funciona a la perfección. Personalmente pienso que mas claro que seguir las instrucciones y copiar los códigos del ejemplo es dificil de conseguir. Inténtalo nuevamente que algo debes estar copiando mal. Saludos
__________________ Agradecer a quien te enseñó, es enseñar lo que de él aprendiste. Recuerda: Decir gracias, poco cuesta y mucho vale ... |
| ||||
Respuesta: Ocultar Caracteres de Inputbox solo tienes que añadir un modulo bas y pegarle este codigo:
Código vb:
Ver original Y donde muestras el inputbox desde tu codigo solo pon: Dim Password as string Call inputbox_Password(Me, "*") PassWord = InputBox(" Ingrese el Password ", App.Title) y tendras en la variable password el pass tecleado por el user al menos eso he entendido yo, aunque no lo he probado suerte
__________________ No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza! |
| ||||
Respuesta: Ocultar Caracteres de Inputbox Hola, si quieres que te ayudemos un poco mas, lo mejor es que digas lo que estas haciendo ya que no podemos jugar a ser adivinos. Abriendo un formulario en blanco y siguiendo las instrucciones del otro post, o sea Copiar y Pegar, funciona a la perfeccion, por lo menos en VB6, en otra versión no tengo ni idea. Un saludo
__________________ Agradecer a quien te enseñó, es enseñar lo que de él aprendiste. Recuerda: Decir gracias, poco cuesta y mucho vale ... |
| ||||
Respuesta: Ocultar Caracteres de Inputbox COMO BIEN TEN HAN DICHO krev16, Erbuson, Pkj El codigo de la pagina que te han proporcionado funciona a la perfeccion. http://www.recursosvisualbasic.com.a...x-password.htm Para probarlo sigue las siguientes instrucciones: 1-abres un formulario en blanco de visual basic 6 (Exe estandar). 2 . le das 2 clicks en el centro del formulario y borras las lineas que hay dentro las que dicen private sub form_load() y la de end sub. 3-vas a la pagina web donde esta el ejemplo y copias el contenido donde dice Codigo fuente en un formulario. OSEA desde option explicit hasta la linea 20 y lo pegas dentro del formulario en blanco.cierras la ventana del formulario. 4- didujas un command1 osea un boton al formulario. 5- En visual basic arriba en el menu le clicas a Proyecto y en el menu que se extiende le clickas en Agregar Modulo y cuando te salga el modulo le das abrir. 6-En la ventana del modulo copias desde la pagina web donde dice Código fuente en un Módulo BAS , desde option explicit hasta la linea 59 y lo pegas en esta ventana modulo que tienes abierta.y cierras la ventana. 7-en el menu visual basic le das a ejecutar iniciar y clicas sobre el boton. |
| |||
Respuesta: Ocultar Caracteres de Inputbox Pido mil disculpas por no haber explicado todo desde el comienzo. La aplicacion que estoy haciendo es desde Excel y la estoy probando como ustedes me explican pero no me funciona. |
| ||||
Respuesta: Ocultar Caracteres de Inputbox Hola encontre este codigo en internet para una macro en excel que abre una ventana inputbox con los caracteres asteriscos como tu quieres EN EL EJEMPLO SIGUIENTE LE HE LLAMADO A LA MACRO imputboxchar: ABRE UNA MACRO EN EXCEL Y ESTE ES EL CODIGO PARA COPIAR EN LA MACRO QUE LE HE PUESTO DE NOMBRE imputboxchar: ------------------------------EJEMPLO PARA MACRO DE EXCEL--------------------- Cita: Private Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, _ ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As Long Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" _ (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, _ ByVal dwThreadId As Long) As Long Private Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long Private Declare Function SendDlgItemMessage Lib "user32" Alias "SendDlgItemMessageA" _ (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal wMsg As Long, _ ByVal wParam As Long, ByVal lParam As Long) As Long Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, _ ByVal lpClassName As String, _ ByVal nMaxCount As Long) As Long Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long 'Constants to be used in our API functions Private Const EM_SETPASSWORDCHAR = &HCC Private Const WH_CBT = 5 Private Const HCBT_ACTIVATE = 5 Private Const HC_ACTION = 0 Private hHook As Long Public Function NewProc(ByVal lngCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Dim RetVal Dim strClassName As String, lngBuffer As Long If lngCode < HC_ACTION Then NewProc = CallNextHookEx(hHook, lngCode, wParam, lParam) Exit Function End If strClassName = String$(256, " ") lngBuffer = 255 If lngCode = HCBT_ACTIVATE Then 'A window has been activated RetVal = GetClassName(wParam, strClassName, lngBuffer) If Left$(strClassName, RetVal) = "#32770" Then 'Class name of the Inputbox 'This changes the edit control so that it display the password character *. 'You can change the Asc("*") as you please. SendDlgItemMessage wParam, &H1324, EM_SETPASSWORDCHAR, Asc("*"), &H0 End If End If 'This line will ensure that any other hooks that may be in place are 'called correctly. CallNextHookEx hHook, lngCode, wParam, lParam End Function Public Function InputBoxDK(Prompt, Optional Title, Optional Default, Optional XPos, _ Optional YPos, Optional HelpFile, Optional Context) As String Dim lngModHwnd As Long, lngThreadID As Long lngThreadID = GetCurrentThreadId lngModHwnd = GetModuleHandle(vbNullString) hHook = SetWindowsHookEx(WH_CBT, AddressOf NewProc, lngModHwnd, lngThreadID) InputBoxDK = InputBox(Prompt, Title, Default, XPos, YPos, HelpFile, Context) UnhookWindowsHookEx hHook End Function Sub imputboxchar() resultado = InputBoxDK("Hola introduce contraseña: ", "pasword") MsgBox ("has escrito: " + resultado) End Sub NOTA: TAMBIEN FUNCIONA EN VB6.0 PONIENDO EL CODIGO EN UN MODULO BAS Y DESDE EL FORMULARIO LLAMAR A LA FUNCTION InputBoxDK ---------------------------PARA VISUAL BASIC 6.0----------------------------- CODIGO EN EL MODULO BAS: Cita: CODIGO EN EL FORMULARIO:Private Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, _ ByVal ncode As Long, ByVal wParam As Long, lParam As Any) As Long Private Declare Function GetModuleHandle Lib "kernel32" Alias "GetModuleHandleA" (ByVal lpModuleName As String) As Long Private Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" _ (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, _ ByVal dwThreadId As Long) As Long Private Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long Private Declare Function SendDlgItemMessage Lib "user32" Alias "SendDlgItemMessageA" _ (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal wMsg As Long, _ ByVal wParam As Long, ByVal lParam As Long) As Long Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, _ ByVal lpClassName As String, _ ByVal nMaxCount As Long) As Long Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long 'Constants to be used in our API functions Private Const EM_SETPASSWORDCHAR = &HCC Private Const WH_CBT = 5 Private Const HCBT_ACTIVATE = 5 Private Const HC_ACTION = 0 Private hHook As Long Public Function NewProc(ByVal lngCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Dim RetVal Dim strClassName As String, lngBuffer As Long If lngCode < HC_ACTION Then NewProc = CallNextHookEx(hHook, lngCode, wParam, lParam) Exit Function End If strClassName = String$(256, " ") lngBuffer = 255 If lngCode = HCBT_ACTIVATE Then 'A window has been activated RetVal = GetClassName(wParam, strClassName, lngBuffer) If Left$(strClassName, RetVal) = "#32770" Then 'Class name of the Inputbox 'This changes the edit control so that it display the password character *. 'You can change the Asc("*") as you please. SendDlgItemMessage wParam, &H1324, EM_SETPASSWORDCHAR, Asc("*"), &H0 End If End If 'This line will ensure that any other hooks that may be in place are 'called correctly. CallNextHookEx hHook, lngCode, wParam, lParam End Function Public Function InputBoxDK(Prompt, Optional Title, Optional Default, Optional XPos, _ Optional YPos, Optional HelpFile, Optional Context) As String Dim lngModHwnd As Long, lngThreadID As Long lngThreadID = GetCurrentThreadId lngModHwnd = GetModuleHandle(vbNullString) hHook = SetWindowsHookEx(WH_CBT, AddressOf NewProc, lngModHwnd, lngThreadID) InputBoxDK = InputBox(Prompt, Title, Default, XPos, YPos, HelpFile, Context) UnhookWindowsHookEx hHook End Function Cita: Private Sub Form_Load() resultado = InputBoxDK("Introduce pasword: ", "pasword") MsgBox ("has escrito: " + resultado) End Sub salu2 espero te sirva Última edición por A.H.H; 30/01/2012 a las 17:03 |
| |||
Respuesta: Ocultar Caracteres de Inputbox Efectivamente el codigo funciona correctamente en excel, como ejecuntando una macro. Pero cuando lo copio en el codigo de mi programa no me funciona. El imputbox se habilita por medio de un boton, el cual pide una contraseña y si es correcta cierra el formato y deja activa la hoja de excel. A continuacion copio los codigos que tengo en el boton. Private Sub CommandButton6_Click() If InputBox("Digite Password", "CLAVE DE CONFIGURACION") <> "780530" Then Exit Sub Unload Me Sheets("Archivo Plano").Select End Sub Y el codigo del form es el siguiente: Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then Cancel = True End Sub Esto es lo que tengo, por favor ayudemen, si necesitan mas del codigo me informan. Y gracias a todos los que me han ayudado. |
| ||||
Respuesta: Ocultar Caracteres de Inputbox Hola si has usado el ejemplo que te expuse anteriormente no deberias poner inputbox para comparar, sino el inputboxDk de la funcion osea el que termina en DK OSEA pones en el modulo de excel el codigo que te puse anteriormente y en el useform en el boton para comparar: Cita: Private Sub CommandButton6_Click() If InputBoxDK("Digite Password", "CLAVE DE CONFIGURACION") <> "780530" Then MsgBox "PASWORD INCORRECTO" 'AQUI EL CODIGO SI EL PASWORD ES INCORRECTO' Exit Sub Else MsgBox "PASWORD CORRECTO" 'AQUI EL CODIGO QUE SIGUE SI ES CORRECTO EL PASWORD' End If End Sub Última edición por A.H.H; 08/02/2012 a las 16:51 |
Etiquetas: |