Sección de controles Ocx para Visual basic , Dll , Activex

211 - Dibujar texto con formato

<Volver> - Anterior - Siguiente



 

Módulo de clase y ejemplo para dibujar texto con formato en vb6

 

Ejemplo para visual basic 6.0 que usa un módulo para poder dibujar en objetos picturebox, formularios, y en el objeto printer , texto con la posibilidad de aplicar formato mediante una serie de métodos, y algunas otras opciones como por ejemplo imágenes

Para usar el módulo previamente se debe crear una instancia del mismo y luego indicar si se quiere, las propiedades para el texto general, por ejemplo el tamaño de fuente, el margen en pixeles, el espaciado vertical también en pixeles para cada linea

 

 

Luego para poder añadir texto se debe añadir con el método AddText.

Este método tiene como parámetro obligatorio el texto que se va a agregar, y como argumentos opcionales las propiedades de la fuente, el backcolor del texto, etc.

Nota: El formato indicado en este parámetro solo afecta al texto actual , y si no se indican los atributos, se utilizarán las propiedades indicadas anteriormente

por ejemplo :

 

 

También tiene una función para añadir párrafos. En este método se puede indicar la alineación del texto para todas las lineas siguientes, hasta que se vuelva a añadir otro párrafo

 

 

Para poder añadir un salto de linea, se puede indicar en el momento de añadir texto, con la constante de visual basic vbNewLine o vbCrLF. O también mediante el método AddNewLine

Para agregar imágenes y gráficos, se debe indicar en la función AddPicture, la ruta del gráfico. (Debe ser un gráfico válido soportado por vb)

 

 

Para poder dibujar una linea con el método DrawLine

 

Luego para mandar todo el dibujo a un objeto Printer, Formulario o Picture, se debe pasar al método Draw el objeto :

 

Nota: para eliminar todo los elementos , Lineas, párrafos , imágenes , texto etc.. , ejecutar el método Clear antes de volver a dibujar para que no lo agregue al final.

 

Ejemplos

En el siguiente Zip hay un proyecto con tres formularios de ejemplo :

El primer formulario dibuja un texto en un objeto form y tiene 3 combos para indicar el margen, el espaciado vertical y la alineación de los párrafos

 

vista previa del ejemplo 1

 

El segundo formulario muestra como añadir imagenes y también hacer una vista previa ( simple ) mediante un PictureBox con scrollBar.

 

 

Y el tercer formulario es para poder imprimir los datos desde una base de datos, también incluyendo imágenes , y puede ser útil para realizar catálogos, listados , informes y reportes simples

Eventos.

La clase tiene 4 eventos

Progress.

Este evento sirve para obtener el progreso mientras se dibuja en el objeto . Es útil para cuando se va a dibujar mucho contenido y puede tardar un poco , y de este modo poder mostrar en una barra de progreso o en un control label el valor actual

StartDraw : Este método se dispara antes de comenzar a dibujar todo el texto en un picturebox o formulario , no se dispara cuando se usa con el objeto Printer.

Con el parámetro lHeight del evento, se puede obtener el alto que se necesita para el área de dibujo, es útil si se va a utilizar con barras de scroll y poder asignar el nuevo alto al control para poder visualizar el contenido. El valor está medido en Pixeles

StartPrint : Este evento se dispara cuando se pasa al método Draw un objeto Printer. Tiene dos parámetros: La cantidad de hojas necesesarias para la impresión, y un valor de tipo Boolean para poder Cancelar con KillDoc la impresión. Si no se cancela, se manda a imprimir con el método endDoc

 

Importante : Este tema de la impresión no está muy testeado, y seguramente el código fuente puede tener errores y fallos

 

Descargar

 


 

Código fuente del módulo de clase

 

 

 


Buscar en Recursos vb con Google