|
|
|
|
- Presentación
- Manipulación de controles 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
Manipulación de controles Procesador de texto mediante programació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.
Manipulación de controles 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 DocOpen.
Por ejemplo:
WP_MyDocument = DocOpen("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 DocSave. 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 DocSave(WP_NoName1, 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:
- DocToText se utiliza para recuperar el texto de Document.
- DocToImage 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 DocSeek. Ejemplo: // Find "BEAUTIFUL" in the text // Selects the first one found to change its color arrFragments is array of docFragments = DocFind(WP_NoName1, "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:
frag2 is docFragment(WP_MyDoc, -1 , 0)
frag2.Text += "End text"
- Insertar un texto desde una posición determinada con DocInsert.
DocInsert(WP_Document, WP_Document.Cursor, "My inserted text")
- Añadir un texto al final de Document con DocAdd.
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 DocAdd.
- insertar un fragmento en primera posición. Ejemplo:
frag is docFragment(WP_MyDoc, WP_MyDoc.Cursor, 0)
frag.Text += sInitialText
- insertar un texto desde la posición 1 con DocInsert.
DocInsert(WP_Document, 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 DocAdd(WP_NoName, 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 DocAdd(WP_NoName1, 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)
Trace(uABookmark.Text)
END
- Insertar un texto al final del marcador:
doc is Document <- WP_MyDocument.Value
fragmentBookmark is docFragment = doc.Bookmark["Bookmark 1"]
IF fragmentBookmark <> Null THEN
let nInsertionPosition = fragmentBookmark.EndPosition
DocInsert(WP_MyDocument, nInsertionPosition, "Text to insert at bookmark position")
ELSE
Error("'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()
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:
| | AutoCorrect | La 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. | AutomaticLink | El 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.
| DisplayBookmarks | La 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.
| DisplayFormattingMarks | La 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.
| DisplayMode | El 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
| FilePath | La 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.
| FormattingMarksColor | La 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.
| HTMLEdit | La 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.
| NumberAccessiblePages | El 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. | NumberDisplayedPage | La 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. | NumberPage | La 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.
| RuleVisible | La 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.
| Selection | La 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.
| SelectionLength | El SelectionLength Property se utiliza para get y cambiar la longitud de la selección realizada en un control Procesador de texto. | ToolbarVisible | La 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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|