none
Habilitar el botón derecho del ratón

    Question

  • Hola,

    Me gustaría saber como puedo habilitar el botón derecho del ratón.  Es para que puedan aparecer las opciones de Copiar, Pegar,...

     

    Tanto para los formularios, como para los informes de Crystal Report

    Un saludo y gracias

    Tuesday, June 22, 2010 2:59 PM

Answers

  • hola

    para el formulario usar este menu contectual es simple, veras en la toolbox un control de nombre

    este es el que debes usar y definir alli las acciones del menu contextual

    Context Menus

    para Crystal lo veo complicado que puedas hacerlo, ya que es un producto distinto, no vi que se pueda sobre un reporte aplicar una accion

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, June 22, 2010 3:22 PM
  • hola

    si asi es aparece alli para que puedas definir los items, pero despues cuando ejecutas tu aplicacion veras que no aparece alli

    o sea esta correcto que lo veas alli mientra defines los items que tendra en tiempo de diseño

    recuerda despues asignar la propiedad en el control ContextMenuStrip del control que quieres asociar con el menu, veras una lista en donde parece este control

     

    Nota, esta correcto el control en la toolbox se llama ContextMenuStrip

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, June 22, 2010 4:01 PM
  • hola

    es que no seria un solo evento el que deberias tener, sino uno por cada item del menu que creas

    o sea si has puesto una opcion de Copiar deberias tener un evento

    Private Sub MenuItemCopiar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click

       'aqui el codigo que copia

    End Sub

    Private Sub MenuItemPegar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click

       'aqui el codigo que pega

    End Sub

    has visto el segundo link que pase alli lo explica, si defienes el item en tiempo de diseño, puedes hacerle dobleclick y este solito te agrega el evento

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, June 22, 2010 9:06 PM

All replies

  • hola

    para el formulario usar este menu contectual es simple, veras en la toolbox un control de nombre

    este es el que debes usar y definir alli las acciones del menu contextual

    Context Menus

    para Crystal lo veo complicado que puedas hacerlo, ya que es un producto distinto, no vi que se pueda sobre un reporte aplicar una accion

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, June 22, 2010 3:22 PM
  • Hola,

     

    ContextMenu como objeto en el cuadro de herramientas no esta, existe el ContextMenustrip, pero no creo que sea exactamente lo que yo quiero, porque cuando lo arrastro me aparece en la parte superior del formulario, una barra de tareas.

     

    Saludos

    Tuesday, June 22, 2010 3:44 PM
  • hola

    si asi es aparece alli para que puedas definir los items, pero despues cuando ejecutas tu aplicacion veras que no aparece alli

    o sea esta correcto que lo veas alli mientra defines los items que tendra en tiempo de diseño

    recuerda despues asignar la propiedad en el control ContextMenuStrip del control que quieres asociar con el menu, veras una lista en donde parece este control

     

    Nota, esta correcto el control en la toolbox se llama ContextMenuStrip

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, June 22, 2010 4:01 PM
  • Hola Leandro,

     

    Habiendo asignado previamente al ContextStripMenu de los controles, al ContextMenuStrip1 que he creado, he codificado siguiente:

     Private Sub contextMenuStrip1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ContextMenuStrip1.Click
    
        If (ContextMenuStrip1.SourceControl Is TextBoxPalabra) Then
          TextBoxPalabra.Copy()
          TextBoxPalabra.Paste()
          TextBoxPalabra.Cut()
          TextBoxPalabra.SelectAll()
        ElseIf (ContextMenuStrip1.SourceControl Is TextBoxDefinicion) Then
          TextBoxDefinicion.Copy()
          TextBoxDefinicion.Paste()
          TextBoxDefinicion.Cut()
          TextBoxDefinicion.SelectAll()
        ElseIf (ContextMenuStrip1.SourceControl Is TextBoxSinonimos) Then
          TextBoxSinonimos.Copy()
          TextBoxSinonimos.Paste()
          TextBoxSinonimos.Cut()
          TextBoxAntonimos.SelectAll()
        Else
          TextBoxAntonimos.Copy()
          TextBoxAntonimos.Paste()
          TextBoxAntonimos.Cut()
          TextBoxAntonimos.SelectAll()
        End If
      End Sub

    Pero No me funciona, no hace absolutamente nada.

     

    Un saludo y gracias

    Tuesday, June 22, 2010 8:57 PM
  • hola

    es que no seria un solo evento el que deberias tener, sino uno por cada item del menu que creas

    o sea si has puesto una opcion de Copiar deberias tener un evento

    Private Sub MenuItemCopiar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click

       'aqui el codigo que copia

    End Sub

    Private Sub MenuItemPegar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click

       'aqui el codigo que pega

    End Sub

    has visto el segundo link que pase alli lo explica, si defienes el item en tiempo de diseño, puedes hacerle dobleclick y este solito te agrega el evento

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Tuesday, June 22, 2010 9:06 PM
  • Hola Leandro,

     

    Ya me funciona, salvo por un pequeño detalle. En un formulario utilizo el ContextMenuStrip segun tus indicaciones, todo funciona segun lo previsto. Pero en otro formulario que tambien tiene un textbox, pero que no tiene que usar ContextMenuStrip, tambien me aparece cuando hago click en el boton derecho las opciones de Copiar, Cortar, Pegar,...

     

    Me he fijado de que el formato del cuadro de opciones es similar al que utilizamos, cuando se usa Windows. En cambio el formato del cuadro de opciones del ContextMenuStrip es algo mas diferente al de Windows porque tiene un tono mas azulado.

     

    Me gustaria poder eliminar el cuadro de opciones que me aparece en el formulario que no usa ContextMenuStrip.

     

    Un saludo y gracias.   

    Wednesday, June 23, 2010 10:51 AM
  • hola

    cuando arrastrate el control ContextMenuStrip segurametne te aparecio el control en una barra en la aprte inferior del formulario, esto quiere decir que ese control no tiene un representacion visual en tiempo de diseño

    pero si cambias de formaulario (siempre en el vista de diseño) este no deberia aparecer, si esta es proque has arrastrado dos controles distintos ya que este aplica a cada form

    prueba una cosa

    - has una backuo de tu codigo por las dudas

    - luego ve al form en donde no queires que este el menu y eliminalo

     

    una consulta de casualidad no estas saundo herencia de formaularios, no ? digo porque si en el form base defines este menu los hijos que heredan tambien lo tendran, por ahi debas definir el menu en el form hijo

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Wednesday, June 23, 2010 12:21 PM
  • Hola  Leandro,

     

    No, no he estoy usando formularios heredados.  He seguido tus indicaciones de hacer un backup, y borrar en el proyecto original los ContextMenuStrip. Y lo que me encuentro cuando ejecuto en modo Debug, es que para un control que es el que representa en la base de datos la clave principal, cuando clicko con el boton derecho, me aparece un menu del tipo de Windows.

    No entiendo porque me sale.

     

    Un saludo y gracias.

    Wednesday, June 23, 2010 7:38 PM
  • hola

    la verdad es muy raro esto que mecionas, si has quitado los controles de ContextMenuStrip de tu formulario no deberia seguir apareciando este menu en el formulario

    no sabria que decirte el comportamiento es extraño, lo que se me ocurre es que crees un proyecto neuvo y realices algunas pruebas con el menu contextual para ver si sucede lo mismo

    mas que nada algunas practicas que poner y quitar el menu en un proyecto limpio, por ahi algo quedo mail en el otro

    tambien podrias probar poniendo otro formulario nuevo en el proyecto que tienes, y solo agregando un boton a este, para validar si tambien aparece el menu al ahcer click derecho en el mismo

    por slogica no deberia aparecer ya que es un form nuevo, pero bueno segun lo que explcias no se puede descartar nada

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Thursday, June 24, 2010 3:14 AM
  • Hola,

     

    Me he creado un nuevo formulario dentro del proyecto, y también me pasa eso a la hora de clickar en el botón derecho. Y abriendo otros proyectos, tambien me pasa lo mismo, cuando clicko con el boton derecho en los textbox`s.  Todo esto cuando ejecuto en modo Debug. Quiza cuando creas el ejecutable no aparece esto.

     

    Misterio.

    Un saludo.

    Thursday, June 24, 2010 9:01 AM
  • A pesar de esta incidencia (ahora el problema seria como desabilitar el boton derecho de un formulario  :) )   , doy el tema por resuelto.

     

    Un saludo

    Thursday, June 24, 2010 9:18 AM