Visual Basic - deshabilitar "pegar" en un textbox

Life is soft - evento anual de software empresarial
 
Vista:

deshabilitar "pegar" en un textbox

Publicado por jorge (56 intervenciones) el 02/04/2009 20:23:33
en visual basic 6 como se puede deshabilitar la opcion de "pegar" cuando se le da click derecho encima (o mejor mejor aun deshabilitar todo ese menu contextual en el textbox indicado)

y tambien como se puede deshabilitar "pegar" via teclado (ctrl+c o shift+ins)

es para un campo que actua de cotraseña pero si alguien tiene la contraseña en el bloc de notas lo selecciona y va al textbox le da pegar y ya!.. eso no quiero, quiero que no se pueda pegar (porque solo tienen unos segundos para ingresar la contraseña (para dedos rapidos :D ) , pero con esto de pegar en menos de un segundo y zaz! )

gracias, espero que me hayan entendido
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:deshabilitar

Publicado por P3L30N2009 (699 intervenciones) el 03/04/2009 10:31:45
échale un vistazo a la API SetWindowLong, con ella puedes desactivar el popmenú.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:deshabilitar

Publicado por Jorge (56 intervenciones) el 13/04/2009 18:19:59
ah esa api no me la conocia, pero sip, atravez de eso parece que lo puedoo hacer, gracias.

tambien encontre una forma extremedamente sencilla que no se como no se me ocurrio antes.

Private Sub tbPass_GotFocus()
Clipboard.Clear
End Sub

jejeje... clipboard.clear vaya cabeza mia... gracias de todos modos :D
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:deshabilitar Pegar mi solucion

Publicado por Jorge (56 intervenciones) el 14/04/2009 19:12:35
aun no veo bien lo de la API pero me parece que esa seria mejor solucion, pero lo hice utilizando el clipboard.clear en una funcion
Si a alguien le sirve pos ahi lo dejo.

----------------------------------------------------------------------------------
Function BorrarClipboard(CodTecla As Integer, CtrlAltShift As Integer, BotonMouse As Integer, ClickMouse As Boolean)
If ClickMouse = False Then
If CodTecla = vbKeyInsert And CtrlAltShift = 1 Then
Clipboard.Clear
ElseIf CodTecla = vbKeyV And CtrlAltShift = 2 Then
Clipboard.Clear
End If
Else
If BotonMouse = 2 Then Clipboard.Clear
End If
End Function
----------------------------------------------------------------------------------

esto es:
si presionan Shift+Ins se borra el clipboard
si presionan Ctrl+V se borra el clipboard
si presionan el click secundario encima (click derecho) se borra el clipboard
y asi no nada que copiar

lo utilize en un texbox de la siguiente manera:
----------------------------------------------------------------------------------
Private Sub tbPsw_KeyDown(KeyCode As Integer, Shift As Integer)
Call BorrarClipboard(KeyCode, Shift, 0, False)
End Sub
----------------------------------------------------------------------------------
Private Sub tbPsw_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Call BorrarClipboard(0, 0, Button, True)
End Sub
----------------------------------------------------------------------------------

faltaria capturar otro boton mas del teclado que permite copiar y pegar, pero no se cual es su codigo :p
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

RE:deshabilitar Pegar mi solucion

Publicado por Fernando Gomez (1 intervención) el 20/12/2018 18:31:19
Gracias por el aporte, 9 años despues me ha servido en un programa VB6 efectiva la funcion BorrarClipboard
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:deshabilitar Pegar mi solucion

Publicado por Jacqueline Vera (1 intervención) el 27/08/2020 16:26:38
El otro botón del teclado que permite copiar y pegar es KeyCode (CodTecla) = 93.

Gracias por la ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar