Advertisement
idsystems

VBBD_Ejercicio 16_EditorTexto con RTF

Feb 6th, 2012
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ' Codigo Ejercicio 16 - Editor Texto con RTF
  2.  
  3.  
  4. Option Explicit  
  5.    
  6.    
  7. Const FILTRO_EXTENSIONES As String = "Archivos de texto (txt)|*.txt|" & _  
  8.                                      "Rich Text Formato (RTF)|*.rtf|" & _  
  9.                                      "Archivos INI|*.ini|Archivos HTML|" & _  
  10.                                      "*.htm|Todos los archivos|*.*"  
  11.    
  12. Private Sub Iniciar()  
  13. Dim i As Integer  
  14.    
  15.     'Acomodamos el primer botón en la esquina superior izquierda  
  16.    cmdOpcion(0).Move 50, 10, 1000, 250  
  17.    
  18.     For i = 1 To 10  
  19.         Load cmdOpcion(i)  
  20.         cmdOpcion(i).Visible = True  
  21.     Next  
  22.        
  23.     'Caption de los CommandButton para las opciones  
  24.    With cmdOpcion  
  25.         .Item(0).Caption = "Nuevo"  
  26.         .Item(1).Caption = "Abrir"  
  27.         .Item(2).Caption = "Guardar"  
  28.         .Item(3).Caption = "Cortar"  
  29.         .Item(4).Caption = "Copiar"  
  30.         .Item(5).Caption = "Pegar"  
  31.         .Item(6).Caption = "Bold"  
  32.         .Item(7).Caption = "Italic"  
  33.         .Item(8).Caption = "Underlined"  
  34.         .Item(9).Caption = "Imprimir"  
  35.         .Item(10).Caption = "Color"  
  36.     End With  
  37.    
  38.     ' Va posicionando un botón al lado del otro  
  39.    For i = 1 To cmdOpcion.Count - 1  
  40.         cmdOpcion(i).Move cmdOpcion(i - 1).Width * i, 10, 1000, 250  
  41.     Next  
  42. End Sub  
  43.    
  44. Private Sub cmdOpcion_Click(Index As Integer)  
  45. On Error GoTo men  
  46.    
  47. Dim ret As VbMsgBoxResult, cnt As Long  
  48.    
  49. Select Case Index  
  50. ' crear un Nuevo archivo  
  51. '''''''''''''''''''''''''  
  52.  Case 0  
  53.        ret = MsgBox("Guardar el archivo?", vbQuestion + vbYesNo, App.Title)  
  54.             If ret = vbYes Then  
  55.                 RichTextBox.Text = ""  
  56.                 'guardamos el archivo  
  57.                GuardarArchivo  
  58.              End If  
  59.        'Limpiamos el RichTextBox  
  60.       RichTextBox.Text = ""  
  61.    
  62. 'Para Abrir un Archivo con el CommonDialog  
  63. '''''''''''''''''''''''''''''''''''''''''''''  
  64.  Case 1  
  65.        Call Abrir_Archivo  
  66. 'Para Guardar un Archivo  
  67. '''''''''''''''''''''''''''  
  68.  Case 2  
  69.        Call GuardarArchivo  
  70. 'Opción Para cortar el Texto del RichTexBox Seleccionado  
  71. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  72.  Case 3  
  73.        'Pegamos en el portapapeles de windows con ClipBoard  
  74.       Clipboard.SetText RichTextBox.SelText  
  75.        'Eliminamos lo seleccionado en el RichTextBox  
  76.       RichTextBox.SelText = ""  
  77. 'Copiar al Clipboard  
  78. '''''''''''''''''''''''''  
  79.  Case 4  
  80.        Clipboard.SetText RichTextBox.SelText  
  81. 'Pegar el contenido del portapapeles en el RichTextBox  
  82. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  83.  Case 5  
  84.        RichTextBox.SelText = Clipboard.GetText  
  85. 'Texto en negrita con la propiedad SelBold  
  86. ''''''''''''''''''''''''''''''''''''''''''''  
  87.  Case 6  
  88.        RichTextBox.SelBold = Not RichTextBox.SelBold  
  89. ' Aplica Italic al texto seleccionado  
  90. ''''''''''''''''''''''''''''''''''''''''  
  91.  Case 7  
  92.        RichTextBox.SelItalic = Not RichTextBox.SelItalic  
  93. ' Aplica Underline al texto seleccionado  
  94. '''''''''''''''''''''''''''''''''''''''''  
  95.  Case 8  
  96.        ' Texto en cursiva  
  97.       RichTextBox.SelUnderline = Not RichTextBox.SelUnderline  
  98. ' Imprimir el contenido del RichTextBox  
  99. '''''''''''''''''''''''''''''''''''''''''  
  100.  Case 9  
  101.        'Titulo del diálogo Imprimir  
  102.       CommonDialog.DialogTitle = "Seleccionar impresora"  
  103.         ' Abre el commondialog para seleccionar impresora  
  104.       CommonDialog.ShowPrinter  
  105.        ' imprimimos el archivo  
  106.       RichTextBox.SelPrint CommonDialog.PrinterDefault, rtfText  
  107.    
  108. 'Color del texto  
  109. ''''''''''''''''''''''  
  110.  Case 10  
  111.       On Error Resume Next  
  112.       CommonDialog.DialogTitle = "Seleccionar color para el texto"  
  113.        'Abrimos el commondialog  
  114.      CommonDialog.ShowColor  
  115.        'Establecemos el color en el Texto seleccionado del RichTextBox  
  116.      RichTextBox.SelColor = CommonDialog.Color  
  117. End Select  
  118.    
  119. Exit Sub  
  120. men:  
  121.     If Err.Number = 424 Then Resume Next  
  122. End Sub  
  123.    
  124. '*   Subrutia para guardar el archivo en disco  
  125. '''''''''''''''''''''''''''''''''''''''''''''''''''''''  
  126. Private Sub GuardarArchivo()  
  127.    
  128.   'Titulo del cuadro de diálogo y otras opciones  
  129.  With CommonDialog  
  130.       .DialogTitle = "Guardar Archivo"  
  131.       .Filter = FILTRO_EXTENSIONES  
  132.          
  133.       'Abre el Common Dialog guardar  
  134.      .ShowSave  
  135.       If .FileName = "" Then Exit Sub  
  136.         If .FilterIndex = 2 Then  
  137.             RichTextBox.SaveFile .FileName  
  138.         Else  
  139.             RichTextBox.SaveFile .FileName, rtfText  
  140.       End If  
  141.    End With  
  142. End Sub  
  143.    
  144. '* Sub para Abrir un archivo del disco  
  145. '''''''''''''''''''''''''''''''''''''''''''''''''''''  
  146. Private Sub Abrir_Archivo()  
  147.   Dim ret As VbMsgBoxResult  
  148.      
  149.   If RichTextBox <> "" Then  
  150.      ret = MsgBox(" Guardar el archivo ?", vbQuestion + vbYesNo, App.Title)  
  151.      'Si elegimos si, entonces guardamos el archivo  
  152.     If ret = vbYes Then GuardarArchivo  
  153.   End If  
  154.      
  155.   With CommonDialog  
  156.       .DialogTitle = "Abrir Archivo"  
  157.       ' Extenciones del Commondialog  
  158.      .Filter = FILTRO_EXTENSIONES  
  159.       ' Abrimos el Commondialog  
  160.      .ShowOpen  
  161.       If .FileName = "" Then Exit Sub 'Si es un vbNullstring salimos  
  162.      ' Cargamos el fichero en el RichTextBox con el método LoadFile  
  163.      RichTextBox.LoadFile .FileName  
  164.      
  165.   End With  
  166. End Sub  
  167.    
  168.    
  169. Private Sub Form_Load()  
  170. Call Iniciar  
  171. End Sub  
  172.    
  173. Private Sub Form_Resize()  
  174.     'Redimensionamos el control RichTextBox al tamaño _  
  175.    del formulario usando el método Move del mismo.  
  176.     RichTextBox.Move 0, cmdOpcion(0).Top + cmdOpcion(0).Height, _  
  177.                      ScaleWidth, ScaleHeight  
  178.    
  179. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement