Как программно изменять текст кода в Visual Basic 6 Editor-е - VB

Узнай цену своей работы

Формулировка задачи:

Мне надо сделать Add-In, форматирующий строки комментариев в тексте кода в Editor в процесе написания моих программ. Делать простой Add-In я научился. Что касается самого кода Add-In-а. Я могу сделать это ламерским способом: 1. Клик на кнопке, запускающей Add-In 2. Установить фокус - клик в окне Editor-а (точнее, в центре экрана) 3. Эмулировать Ctrl-A (выбрать всё), затем Ctrl-C (копировать), затем Delete 4. Вставить текст из Clipboard-a в Textbox (Multiline) или в RTB 5. Произвести все нужные мне манипуляции 6. Эмулируя Ctrl-V вставить изменённый текст в окно кода Editor Но хочется более продвинутого метода. Буду благодарен за подсказки

Решение задачи: «Как программно изменять текст кода в Visual Basic 6 Editor-е»

textual
Листинг программы
   Dim startLine As Long, startCol As Long
   Dim endLine As Long, endCol As Long
   Dim codeText As String
   
   Dim cpa As VBIDE.CodePane
   Dim cmo As VBIDE.CodeModule
   
   Set cpa = VBInstance.ActiveCodePane
   Set cmo = cpa.CodeModule
   
   ' Весь текст
   codeText = cmo.Lines(1, cmo.CountOfLines)
   MsgBox codeText
   
   ' Выделенный текст
   cpa.GetSelection startLine, startCol, endLine, endCol
   If startLine = endLine And startCol = endCol Then Exit Sub
   
   If startLine = endLine Then
     ' Выделенный текст
     codeText = Mid$(cmo.Lines(startLine, 1), startCol, endCol - startCol)
   Else
     codeText = Mid$(cmo.Lines(startLine, 1), startCol) & vbCrLf
     If startLine + 1 < endLine Then
        codeText = codeText & cmo.Lines(startLine + 1, _
          endLine - startLine - 1)
     End If
     codeText = codeText & Left$(cmo.Lines(endLine, 1), endCol - 1)
   End If
   MsgBox codeText

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы