Ejemplos usando el Api de windows para Visual basic

251 - visualizar número de líneas en un Text Box

<Volver> - Anterior - Siguiente



 

 

 

Contenido:

 

 

 

 

 


Ejemplo 1 - Con textBox

Ejemplo que permite visualizar los números de líneas al costado de un textbox , y el número de linea actual ,por ejemplo como el ide de vb.

Este proyecto, ( que puede ser útil por ejemplo para editores de texto, editores de scripts etc...) está extraido de un componente activex programado por Visual basic Accelerator , y como muestra las siguientes imágenes , en un picturebox que se ubica al costado del TBox, se dibujan los números de líneas de acuerdo al contenido y se remarca el número de linea actual , es decir donde se encuentra ubicado el cursor o caret, y también remarcando los números de lineas cuando se selecciona una porción de texto

 

 

 

 

Pasos para crear el ejemplo

  1. Agregar un control TextBox llamado text1 el form
  2. También un control PictureBox llamado Picture1
  3. Al text1 colocarle la propiedad Multiline con el valor true, y la propiedad ScrollBars
  4. Agregar un módulo bas

 

Código fuente en el módulo bas

 

Código fuente en el Form

 

 


Ejemplo 2 - Con RichTextBox

También se puede utilizar con un control richtextBox en ves de un text, pero por lo que estube viendo hay que hacer un par de cambios , por ejemplo.

1 - En la función DrawLines, hay que cambiar el parámetro que es de tipo TextBox, por un parámetro válido, puede ser RichTextBox u Object

por ejemplo :

Public Sub DrawLines(picTo As PictureBox, txtThis As Object)

 

2 - En el evento Resize del form, se deberia ejecutar el segundo bloque no el primero , es decir quedaria asi :

Private Sub Form_Resize()
On Error Resume Next
   

      Picture1.Move Screen.TwipsPerPixelX, _
         Screen.TwipsPerPixelX, _
         Picture1.Width, _
         Me.ScaleHeight - 2 * Screen.TwipsPerPixelY
      RichText.Move _
         Picture1.Left + Picture1.Width, _
         Screen.TwipsPerPixelY, _
         Me.ScaleWidth - 2 * Screen.TwipsPerPixelX - Picture1.Width, _
         Me.ScaleHeight - 2 * Screen.TwipsPerPixelY
End Sub  

 

3 - Al richText, establecerle las propiedades:

  1. BorderStyle en 0 ( rtfNoBorder)
  2. Propiedad apariencia en Flat

 


Enlaces relacionados



Buscar en Recursos vb