Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-08-2015
joseprad joseprad is offline
Miembro
 
Registrado: oct 2006
Posts: 36
Poder: 0
joseprad Va por buen camino
Botón derecho del mouse

Hola amigos:

Sigo con mi componente RichEdit con corrector ortográfico que tengo bastante adelantado.

Necesitaría vuestra ayuda para que, al abrir un popup con el botón derecho del mouse, el cursor se me posicionara sobre la palabra, para poder identificarla i corregirla, al estilo de un tratamiento de texto.

Muchas gracias de antemano y un saludo a todos.
Responder Con Cita
  #2  
Antiguo 08-08-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Creo que lo que pides no es posible, he intendado interceptar el evento OnPopup del TPopupMenu, realizando el popup a meno, pero siempre el menu desplegable me queda debajo del cursor del mouse

Para mover el cursor simplemente use SetCursorPos

En fin creo que a nivel de experiencia de usuario podria ser "molesto"

Revisa la propiedad TMenuItem.Default, al ponerla a True, se colorea en negrita, quiza eso te sirva
Responder Con Cita
  #3  
Antiguo 09-08-2015
joseprad joseprad is offline
Miembro
 
Registrado: oct 2006
Posts: 36
Poder: 0
joseprad Va por buen camino
Creo que no me he explicado bien.

Lo que yo deseo es posicionar el cursor sobre una palabra con el botón derecho del mouse, lo mismo que puedo hacer con el botón izquierdo pero con el derecho, así puedo identificar la la palabra a corregir y el popup me carga las sugerencias.

Vamos lo mismo que ocurre cuando escribimos en el foro y hay queremos corregir una palabra.
Responder Con Cita
  #4  
Antiguo 09-08-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Te referis a hacerle doble click a la palabra y que quede seleccionada en azul?

Proba con las propiedades SelStart, SelCount
Responder Con Cita
  #5  
Antiguo 09-08-2015
joseprad joseprad is offline
Miembro
 
Registrado: oct 2006
Posts: 36
Poder: 0
joseprad Va por buen camino
Cuando decía cursor debía decir caret.

Para poder identificar una palabra en un RichEdit desearía desplazar el caret sobre la palabra que he hecho clic con el botón derecho del ratón. De esta manera identifico la palabra y puedo abrir un popup con las sugerencias correctas de la palabra.
Responder Con Cita
  #6  
Antiguo 14-08-2015
joseprad joseprad is offline
Miembro
 
Registrado: oct 2006
Posts: 36
Poder: 0
joseprad Va por buen camino
Después de mucho buscar salió la solución.

Situar el caret de un RichEdit en la posición del cursor del mouse al hacer click con el buton derecho.
Código Delphi [-]
procedure TJrRichEditDic.MouseDown(sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  len: Integer;
  p: Integer;
  pt: TPoint;
begin
  pt := Point(X, Y);
  case Button of
    mbLeft: begin
      end;
    mbRight: begin
        if Length(Text) <> 0 then begin
          len := SendMessage(Handle, WM_GETTEXTLENGTH, 0, 0);
          p := Perform(Messages.EM_CHARFROMPOS, 0, Integer(@pt));
          SendMessage(Handle, EM_SETSEL, p, p);
        end;
      end;
  end;
end;
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Borrar un elemento image al seleccionarlo con el botón derecho del mouse CarlosAlberto Varios 1 07-03-2013 21:39:34
Anular el boton derecho del mouse? marceloalegre Varios 10 16-08-2007 22:39:48
Boton derecho del mouse (please) sac OOP 3 29-04-2007 14:07:16
Botón derecho DBGrid jzk OOP 5 31-01-2005 17:21:49
Botón Derecho y TStringGrid Wulvay Varios 5 22-09-2004 00:53:54


La franja horaria es GMT +2. Ahora son las 02:40:00.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi