Capturar Evento Paste Del Menu Contextual?

Capturar Evento Paste Del Menu Contextual?
Artículo
Citar    Descargar mensaje  
Mensaje Capturar Evento Paste Del Menu Contextual? 
 
buenas...

estamos en esta situación
un txt el usuario presiona clic derecho y pone pegar

en ese momento quiero capturar el dato en este caso sera texto ejemplo: https://www.youtube.com/watch?v=44Q9dxVLHNU

en ese momento quiero intervenir para recortar y solo obtener 44Q9dxVLHNU  que es el ide del vídeo

y acto seguido poner ese ide o texto en el textbox?

como se hace para detectar el evento paste?
alguno de ustedes ya tiene algo hecho sobre esta situación?

espero sus comentarios

saludos.



 
v3ctor - Perfil MP  
v3ctor [ Miercoles, 15 Febrero 2017, 23:52 ]


Capturar Evento Paste Del Menu Contextual?
Comentarios
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
Proba con drop. y tenes que habilitar el control para que reciba el drop.
Saludos.



 
tincho - Perfil MP  
tincho [ Jueves, 16 Febrero 2017, 00:44 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
Una idea,

Cuando el textarea reciba el foco ver si el objeto Clipboard tiene texto y procesar. Así ya no esperas a que el usuario de click secundario y luego en Paste.

Saludos



 
razaAztk - Perfil MP  
razaAztk [ Jueves, 16 Febrero 2017, 07:12 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
razaAztk escribió: [Ver mensaje]
Una idea,

Cuando el textarea reciba el foco ver si el objeto Clipboard tiene texto y procesar. Así ya no esperas a que el usuario de click secundario y luego en Paste.

Saludos



salio esto

Public Sub ComboBox1_Enter()

  Dim youtube As String = "https://www.youtube.com/watch?v="
  Dim texto As String
  Dim id As New String[]

  texto = Clipboard.Paste()

  If InStr(texto, youtube) Then
    id = Split(texto, "=")
    ComboBox1.Text = id[1]
  Endif

End




 
v3ctor - Perfil MP  
v3ctor [ Jueves, 16 Febrero 2017, 14:05 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
en el evento drop me agrada mas pero....

Public Sub cbxID_Drop()
  Dim youtube As String = "https://www.youtube.com/watch?v="
  Dim texto As String
  Dim id As New String[]
  
  Print Drag.Type
  texto = Drag.Data
  
  Print "texto=" & texto
  
  If InStr(texto, youtube) Then
    id = Split(texto, "=")
    cbxID.Text = id[1]
  Endif
  
  
  Print "evento drop"

End


pero drag.data me tira esto:
h^@t^@t^@p^@s^@:^@/^@/^@w^@w^@w^@.^@y^@o^@u^@t^@u^@b^@e^@.^@c^@o^@m^@/^@w^@a^@t^@c^@h^@?^@v^@=^@V^@o^@N^@a^@i^@5^@i^@0^@q^@O^@I^@


ahi esta la url... 'https://www.youtube.com/watch?v=VoNai5i0qOI'
pero hay un problema con el formato  
tengo que tratar ese formato?



 
v3ctor - Perfil MP  
v3ctor [ Jueves, 16 Febrero 2017, 15:14 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
texto = Drag.Data


Así, sin más, es precipitado. Drag.data es una propiedad Variant por algo, es decir, no siempre contiene texto... Tienes que comprobar primero vía propiedad Drag.Format (o Drag.type, no recuerdo bien) el tipo de dato que lleva el drag... y obrar en consecuencia.

Saludos



 
shordi - Perfil MP  
shordi [ Jueves, 16 Febrero 2017, 15:31 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
Print Drag.Format

text/unicode

ese es el informe del tipo de formato ahora la cuestión es pasarlo a texto plano o algo así

lista de formatos que maneja drag:

text/plain;charset=utf-8
text/plain
text/x-moz-url
text/uri-list
text/html
text/unicode


como se hará para pasarlo de formato 'text/unicode' a  'text/plan'  ??



 
última edición por v3ctor el Jueves, 16 Febrero 2017, 15:54; editado 1 vez 
v3ctor - Perfil MP  
v3ctor [ Jueves, 16 Febrero 2017, 15:35 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
Fácil:

texto = Drag.Paste("text/plain")


 



 
shordi - Perfil MP  
shordi [ Jueves, 16 Febrero 2017, 16:25 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
shordi escribió: [Ver mensaje]
Fácil:

texto = Drag.Paste("text/plain")


 


que raro eso lo habia probado pero no me funciono y ahora si, algo hice mal seguro.

bueno no es la respuesta a la pregunta del post pero es una alternativa interesante.
el usuario selecciona la url y la arrastra en este caso al combobox y el id que insertado.

Public Sub cbxID_Drop()
  Dim youtube As String = "https://www.youtube.com/watch?v="
  Dim texto As String
  Dim id As New String[]
 
  texto = Drag.Paste("text/plain")

  If InStr(texto, youtube) Then
    id = Split(texto, "=")
    cbxID.Text = id[1]
  Endif

End


con esto al menos le doy otra alternativa al usuario



 
v3ctor - Perfil MP  
v3ctor [ Jueves, 16 Febrero 2017, 18:13 ]
Citar    Descargar mensaje  
Mensaje Re: Capturar Evento Paste Del Menu Contextual? 
 
¿No es más simple colocar la depuración en el evento Change?
Así te valdría para el paste, para el drop y para el tecleo al mismo tiempo...



 
shordi - Perfil MP  
shordi [ Jueves, 16 Febrero 2017, 19:50 ]
Mostrar mensajes anteriores:    
Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 


   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.412s (PHP: -78% SQL: 178%)
Consultas SQL: 46 - Debug off - GZIP Activado