AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / Desarrollar una aplicación o un sitio web / Controles, ventanas y páginas / Controles: tipos disponibles / Control Procesador de texto
  • Presentación
  • Manejo de la control Procesador de texto mediante programación
  • Abrir y crear un docx Document en una control Procesador de texto
  • Salvando un docx Document
  • Realizar una búsqueda en una Document y modificar el resultado de la búsqueda
  • Gestión de la selección
  • Agregar texto en un Document
  • Añadir un salto de página en una Document
  • Gestión de marcadores
  • Secuenciación de informes y documentos de procesamiento de textos
  • Propiedades de control Procesador de texto
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Presentación
Controles Procesador de texto manipulables mediante programación.
Para manipular el control Procesador de texto, WLanguage propone:
  • una set de funciones utilizadas para realizar todas las operaciones comunes (programación directa a través de las funciones WLanguage DocXXX. Para obtener más información, consulte Funciones del control Procesador de texto.
  • una programación avanzada a través de los diferentes tipos avanzados de WLanguage utilizados para dirigir manipular el contenido del archivo docx mostrado por el control Procesador de texto. Para obtener más información, consulte Tipos associated con la control Procesador de texto.
Esta página de ayuda explica cómo manipular mediante programación los controles Procesador de texto.
Manejo de la control Procesador de texto mediante programación

Abrir y crear un docx Document en una control Procesador de texto

Para abrir un docx Document existente mediante programación en un control Procesador de texto, puede:
  • asignar el archivo docx al archivo control Procesador de texto. Por ejemplo:
    // Select a .docx file in the current directory
    sFileName is string
    sFileName = fSelect("", "presentation.docx", ...
    "Selecting DocX files", ...
    "Docx file (*.docx)" + TAB + "*.docx", "*.docx", fselOpen)
     
    IF sFileName ~= "" THEN
    // No selected file
    RETURN
    END
     
    // Load the docx file
    WP_MyDocument = sFileName
  • utilizar Abrir.
    Por ejemplo:
    WP_MyDocument = Open("C:\Users\test\Documents\file.docx")
    IF ErrorOccurred() THEN
    Error(ErrorInfo())
    RETURN
  • utilizar una variable Document y asignarla al control Procesador de texto.
    Por ejemplo:
    MyDocument is Document
    MyDocument = "C:\temp\presentation.docx"
    WP_MyDocument = MyDocument

    o:
    MyDocument is Document
    MyDocument = DocOpen("C:\Users\test\Documents\file.docx")
    IF ErrorOccurred() THEN
    Error(ErrorInfo())
    ELSE
    WP_MyDocument = MyDocument
    END
Atención: sólo los archivos en formato docx pueden ser manejados por la control Procesador de texto.
Consejo: Para mostrar una Document vacía en una control Procesador de texto, todo lo que tienes que hacer es asignar una cadena vacía a la control Procesador de texto.
Ejemplo:
// Create a blank document
WP_MyDocument = ""

Salvando un docx Document

Para guardar un docx Document, basta con utilizar Guardar.
Ejemplo:
// Choose the directory and the backup name
sFileName is string = fSelect(CompleteDir(fExeDir()),"presentation.docx", ...
"Selecting DocX files","Docx file (*.docx)" + TAB + "*.docx" , "*.docx", fselCreate)
 
// Save the file
WP_NoName1.Save(sFileName)
 
IF ErrorOccurred THEN
Error(StringBuild("The %1 file was not saved.", sFileName), ErrorInfo())
RETURN
END
Observaciones:
  • El contenido de control Procesador de texto también puede ser:
  • .ToText se utiliza para recuperar el texto de Document.
  • .ToImage se utiliza para convertir una página Document en Image.

Realizar una búsqueda en una Document y modificar el resultado de la búsqueda

Para realizar una búsqueda en un tratamiento de texto Document, basta con utilizar <Procesador de texto>.Seek.
Ejemplo:
// Find "BEAUTIFUL" in the text
// Selects the first one found to change its color
arrFragments is array of docFragments = WP_NoName1.Find("BEAUTIFUL")
 
IF arrFragments.Count >= 1 THEN
// Position the cursor at the beginning of the first word found
WP_NoName1.Cursor = arrFragments[1].StartPosition
// Calculate the selection length
WP_NoName1.SelectionLength = ...
arrFragments[1].EndPosition - arrFragments[1].StartPosition+1
// Modify the text color
arrFragments[1].Formatting.TextColor = PastelRed
BREAK
END
En este código, la docFragment Variable corresponde a la sección del texto que contiene la palabra buscada, así como su posición en todo el texto. Entonces, usted tiene la capacidad de manipular el fragmento encontrado.

Gestión de la selección

Para manipular la selección realizada actualmente en un control Procesador de texto, tiene la posibilidad de recuperar esta selección en un docFragment Variable.
El siguiente código se utiliza para cambiar la color del texto seleccionado.
Ejemplo:
// Change the selection color
// Get the current selection
MySelection is docFragment(WP_MyDocument, WP_MyDocument.Cursor, ...
WP_MyDocument.SelectionLength)
// Change the color
MySelection.Formatting.TextColor = PastelRed
El docFragment Variable posee un constructor específico utilizado para recuperar fácilmente la selección.

Agregar texto en un Document

Se pueden usar varios métodos para agregar texto en un Document existente:
  • Insertar un fragmento en la posición deseada. Ejemplo:
    // Insert a text at the end of document
    frag2 is docFragment(WP_MyDoc, -1 , 0)
    frag2.Text += "End text"
  • Insertar un texto desde una posición determinada con .Insert.
    WP_Document.Insert(WP_Document.Cursor, "My inserted text")
  • Añadir un texto al final de Document con .add.
Para agregar texto en un Document vacío , puede:
  • utilizar la asignación directa de control:
    <Word Processing control> = "Text to insert"
    Ejemplo:
    WP_MyDocument = "I am the first sentence of this document."
  • añadir el texto con .add.
  • insertar un fragmento en primera posición. Ejemplo:
    // sInitialText contains the text to insert
    frag is docFragment(WP_MyDoc, WP_MyDoc.Cursor, 0)
    frag.Text += sInitialText
  • insertar un texto desde la posición 1 con .Insert.
    WP_Document.Insert(1, "My inserted text")

Añadir un salto de página en una Document

El siguiente código se utiliza para añadir un salto de página en una Document:
// Add a page break
WP_NoName1.Add(Charact(12))
También puede utilizar las siguientes constantes para añadir el tipo de interrupción deseado a una Document o a un fragmento:
  • docColumnBreak: Añade un salto de columna en una sección multicolumna. Si la sección no es multicolumna, se añade una pausa Page.
  • docLineBreak: Añade una ruptura de Line.
  • docPageBreak: Añade un salto de página.
  • docParagraphBreak: Añade una ruptura de párrafo.
Ejemplo:
// Add a page break
WP_NoName1.Add(docPageBreak + "Text on next page")

Gestión de marcadores

Tienes la capacidad de manejar los marcadores en un procesador de textos Document. Por ejemplo:
  • Añadir un marcador: Agrega un marcador llamado MyBookmark con el texto seleccionado.
    doc is Document
    doc <- WP_MyDocument
    fragSelection is docFragment = WP_MyDocument.Selection.Fragment
    doc.Bookmark["MyBookmark"] = fragSelection
  • Eliminar un marcador: Elimina el marcador llamado Marcador1:
    doc is Document
    doc <- WP_MyDocument
    Delete(doc.Bookmark, "Bookmark1")
  • Listado de los marcadores: Enumera los marcadores de Document:
    doc is Document 
    doc <- WP_MyDocument
    FOR EACH uABookmark,BookmarkName of doc.Bookmark
    Trace(BookmarkName) // Bookmark name
    Trace(uABookmark.Text) // Bookmark text
    END
  • Insertar un texto al final del marcador:
    doc is Document <- WP_MyDocument.Value
    // Find the bookmark position
    fragmentBookmark is docFragment = doc.Bookmark["Bookmark 1"]
    IF fragmentBookmark <> Null THEN
    // Insert text at the end of bookmark
    let nInsertionPosition = fragmentBookmark.EndPosition
    // Actual insertion
    WP_MyDocument.Insert(nInsertionPosition, "Text to insert at bookmark position")
    ELSE
    Erreur("'Bookmark 1' bookmark not found in the document")
    END

Secuenciación de informes y documentos de procesamiento de textos

Ahora tiene la capacidad de secuenciar informes y documentos de procesamiento de textos.
Para ello, además de las funciones estándar de creación de secuencias de informes, hay que utilizar iSequencingAddDoc. Por ejemplo:
MyDocument is Document = "c:\temp\generalconditions.docx"
 
// Print in the report viewer
iDestination(iViewer)
// Add reports into the sequence
iSequencingAdd(RPT_Report1)
iSequencingAdd(RPT_Report2, 3)
// Add the general conditions in document format
iSequencingAddDoc(MyDocument)
iSequencingPrint()
Para obtener más información, consulte Secuenciación de informes.

Propiedades de control Procesador de texto

Las siguientes propiedades son específicas de la control Procesador de texto. Se utilizan principalmente para manipular las características del control:
AutoCorrectLa propiedad AutoCorrect permite definir un conjunto de correcciones automáticas que se aplicarán en un control Procesador de texto a medida que el usuario escribe.
AutomaticLinkEl AutomaticLink Property se utiliza para:
  • determina si el modo de detección de enlaces automatic está activado,
  • habilita o deshabilita el modo de detección de enlaces automatic.
DisplayBookmarksLa propiedad DisplayBookmarks permite:
  • identificar el modo de visualización de los marcadores en un control Procesador de texto.
  • activar o desactivar los marcadores en un control Procesador de texto.
DisplayFormattingMarksLa propiedad DisplayFormattingMarks permite:
  • Determinar si las marcas de formato están activadas o desactivadas en un control Procesador de texto.
  • Activar o desactivar las marcas de formato en un control Procesador de texto.
DisplayModeEl DisplayMode Property obtiene y cambia:
  • el modo de visualización en un control Procesador de texto,
  • el modo de visualización en un lector PDF control
  • el modo de visualización en un editor HTML control,
  • el modo de visualización en un Kanban control
FilePathLa propiedad FilePath permite obtener:
  • el nombre del archivo xlsx asociado a un control Hoja de cálculo.
  • el nombre del archivo asociado a un control Editor de imágenes.
  • el nombre del archivo PDF asociado a un control Lector PDF.
  • el nombre del archivo DOCX asociado a un control Procesador de texto.
  • el nombre del archivo wddiag asociado a un control Editor de diagramas.
FormattingMarksColorLa propiedad FormattingMarksColor permite:
  • obtener el color de las marcas de formato en un control Procesador de texto.
  • cambiar el color de las marcas de formato en un control Procesador de texto.
HTMLEditLa HTMLEdit Property se utiliza para:
  • averigua si un control Procesador de texto se muestra en modo optimizado para la edición HTML,
  • modifica una control Procesador de texto para mostrarla (o no) en modo optimizado para la edición HTML.
NumberAccessiblePagesEl NúmeroDePáginasAccesibles Property se utiliza para get el número de páginas cargadas actualmente en un lector de PDF o control Procesador de texto.
NumberDisplayedPageLa propiedad NumberDisplayedPage permite identificar y cambiar el número de la página que se muestra actualmente en el control Lector PDF o Procesador de texto.
NumberPageLa propiedad NumberPage permite obtener:
  • el número de páginas de un fichero Image "multipágina. Esta Image se muestra en una control Imagen o en el fondo de una control Gráfico.
  • el número de páginas de un archivo PDF que se muestra en un control Imagen.
  • el número de páginas que se encuentran en un archivo PDF que se muestra en un lector de PDF control.
  • el número de páginas que se encuentran en un archivo DOCX mostrado en un control Procesador de texto.
RuleVisibleLa propiedad RuleVisible permite:
  • Averigua si las reglas son visibles o Invisible en una control Procesador de texto.
  • Hacer visibles las reglas o Invisible en una control Procesador de texto.
SelectionLa selección Property se utiliza para get las características de la selección (o cursor):
  • en un control Procesador de texto.
    Observación: Esta selección se encuentra en la sección que se está editando en la control (cuerpo, cabecera o pie de página).
  • de un control Hoja de cálculo.
  • en un editor HTML control.
  • en un control Editor de diagramas.
SelectionLengthEl SelectionLength Property se utiliza para get y cambiar la longitud de la selección realizada en un control Procesador de texto.
ToolbarVisibleLa propiedad ToolbarVisible permite:
  • determinar si la barra de herramientas o la cinta de opciones se muestra en un control.
  • mostrar u ocultar la barra de herramientas o la cinta de opciones en un control.
Para obtener una lista completa de las propiedades de WLanguage que pueden utilizarse con los controles de tratamiento de textos, consulte Propiedades de control Procesador de texto.
Versión mínima requerida
  • Versión 24
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/06/2023

Señalar un error o enviar una sugerencia | Ayuda local