Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Servers (https://www.clubdelphi.com/foros/forumdisplay.php?f=9)
-   -   Obtener la linea actual de Word (https://www.clubdelphi.com/foros/showthread.php?t=39343)

aom 17-01-2007 17:41:58

Obtener la linea actual de Word
 
Hola,
necesito obtener la linea actual de Word (aquella en la que está el cursor).
Hasta ahora jugaba con el hecho de que la línea que busco tiene una fuente especial y si me coloco al principio de la línea puedo hacer lo siguiente:

Document.Application.Selection.SelectCurrentFont;
Document.application.selection.Copy;

Con esto tengo en el ClipBoard la linea que necesito, pero solo porqué tiene una fuente diferente a las líneas que la preceden y suceden. Necesito poder obtener la línea sin utilizar este truco-chapuza ;) .

Alguien sabe cómo hacerlo?

Gracias por adelantado

aom 17-01-2007 19:51:00

Hola,
ya he encontrado como hacerlo. Para quién le pueda servir:

Código Delphi [-]
procedure ObtenerLineaActualWord:string;
var
   oleNumero:OleVariant;
   a1,a2,a3: OleVariant;
begin
   a1:=emptyparam;
   a2:=wdExtend;
   a3:=wdCharacter;
   oleNumero:=1;
   //inicio de la línea
   Document.Application.Selection.HomeKey(a1,a1);
   //fin de la línea
   Document.Application.Selection.EndKey(a1,a2);
   //para descartar el salto de línea
   Document.Application.Selection.MoveLeft(a3,oleNumero,a2);
   //seleccionar línea
   Document.Application.Selection.Select;
   //Copiar la selección en el clipboard
   Document.application.selection.Copy;

   result:=ClipBoard.AsText;
end;

Saludos


La franja horaria es GMT +2. Ahora son las 10:30:26.

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