Читайте также:
|
|
Do While UCase(selElDoc.tagName) <> "TABLE" 'выполнить если тэг не TABLE
selElDoc = selElDoc.parentElement 'переходим элементом выше
If selElDoc Is Nothing = True Then 'если элемент отсутствует
Exit Sub
End If
Loop
Получить текст элемента в TxtRange
'задаем позицию курсора в TxtRange
TxtRn = WebBrowser1.Document.DomDocument.selection.createRange()
'расширяем TxtRange на элемент
TxtRn.moveToElementText(selElDoc)
Задать HTML в TxtRange
TxtRn.pasteHTML(Text)
Перейти скролом
WebBrowser1.Document.Body.ScrollTop = WebBrowser1.Document.Body.ScrollHeight 'прокрутить HTML вниз до упора, если после = ставить число, то прокрутка будет на определенную позицию, например:
n = WebBrowser1.Document.Body.ScrollTop
'здесь вписать действия, возможно понадобиться слип
'System.Threading.Thread.Sleep(200)
WebBrowser1.Document.Body.ScrollTop = n
Убрать запрос «Сохранить изменения»
Перед изменением вставить:
webBrowser1.Navigate("about:blank")
If WebBrowser1.Document IsNot Nothing Then
WebBrowser1.Document.Write(String.Empty)
End If
Параметры бумаги
WebBrowser1.ShowPageSetupDialog()
Предпросмотр
WebBrowser1.ShowPrintPreviewDialog()
Печать
WebBrowser1.ShowPrintDialog()
Запуск страницы в браузере
Shell("cmd /X /C start C:\txt.htm", AppWinStyle.Hide)
Команды ExecCommand
WebBrowser1.Document.DomDocument.ExecCommand("Undo")
"Undo" - отменить
"Redo" – вернуть отмененное
"Cut" - вырезать
"Copy" - копировать
"Paste" - вставить
"InsertColumns" – добавить столбец
"DeleteColumns" – удалить столбец
"SuperScript" – вырхний индекс
"SubScript" – нижний индекс
"JustifyLeft" – выровнить по левому краю
"JustifyCenter" – выровнить по центру
"JustifyRight" - выровнить по правому краю
"JustifyFull" - выровнить по ширине
"Bold" - жирность
"Italic" - курсив
"Underline" – подчеркивание
"ForeColor" - задать цвет шрифта: ("ForeColor", False, "#RGB")
"FontSize" - задать размер шрифта так:
("FontSize", False, FontSizeCombo.Text)
"FontName" - задать имя шрифта так:
Dim str As MSHTML.IHTMLTxtRange = WebBrowser1.Document.DomDocument.selection.createRange
str.execCommand("FontName", False, FontCombo.Text)
Команды queryCommandValue
'имя шрифта выделенного текста
FontCombo.Text = WebBrowser1.Document.DomDocument.queryCommandValue("FontName")
'размер шрифта выделенного текста
FontSizeCombo.Text = WebBrowser1.Document.DomDocument.queryCommandValue("FontSize")
'цвет шрифта выделенного текста
txt = Hex(WebBrowser1.Document.DomDocument.queryCommandValue("ForeColor"))
Do While Len(txt) < 6
txt = "0" & txt
Loop
c = Mid(txt, 1, 2)
b = Mid(txt, 3, 2)
a = Mid(txt, 5, 2)
bFontColor.ForeColor = Color.FromArgb(ConvertDec(a),ConvertDec(b),ConvertDec(c))
Поиск
'форма запускаемая при нажатии кнопки найти
Friend Class FindForm_Renamed
Inherits System.Windows.Forms.Form
Private txtrng As MSHTML.IHTMLTxtRange 'диапозон поиска
Private txtTMP As MSHTML.IHTMLTxtRange
'код загрузки формы
Private Sub FindForm_Renamed_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'получаем фрагмент Body в документе
txtTMP = htmedit.WebBrowser1.Document.DomDocument.Body.createTextRange
'передаем фокус в поле где будет введено слово для поиска
Text1.Focus()
End Sub
'функция поиска
Private Sub FindText()
'присваеваем выделение переменной ttf и txtrng
Dim ttf As MSHTML.IHTMLTxtRange
ttf = htmedit.WebBrowser1.Document.DomDocument.selection.createRange
txtrng = htmedit.WebBrowser1.Document.DomDocument.selection.createRange
'сдвигаем ttf на символ дальше
ttf.moveEnd("character", 1)
If ttf.text Is Nothing Then
'если ttf пустой, то диапозон поиска начинаем с начала Body
txtrng.setEndPoint("StartToStart", txtTMP)
Else
'если ttf не пустой, то диапозон поиска начинаем с его конца
txtrng.setEndPoint("StartToEnd", ttf)
End If
'диапозон поиска завершаем концом документа (Body)
txtrng.setEndPoint("EndToEnd", txtTMP)
'диапозон поиска определен
If txtrng.findText(Text1.Text, 1, 0) = True Then
'если Text1.Text найден в диапозоне поиска, то выделяем его
txtrng.select()
Else
'если Text1.Text не найден прокручиваем докумен в начало
htmedit.WebBrowser1.Document.Body.ScrollTop = 0
'и выдаем сообщение
MsgBox("Текст не найден", MsgBoxStyle.Information, "Поиск")
End If
End Sub
'запускаем поиск при клике на кнопку
Private Sub Cfindtxt_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Cfindtxt.Click
FindText()
txtrng.scrollIntoView()
End Sub
'код замены при клике на кнопку
Private Sub Crepl_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Crepl.Click
'присваиваем поисковой переменной выделение в документе
txtrng = htmedit.WebBrowser1.Document.DomDocument.selection.createRange
If txtrng.text = Text1.Text Then
'если выделение равно переменной для поиска, то меняем его на заменяемое
txtrng.text = Text2.Text
End If
txtrng.select()
'выполняем новый поиск и переходим к следующиму найденому слову
FindText()
txtrng.scrollIntoView()
End Sub
'код замены всех слов при клике на кнопку
Private Sub CreplAll_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles CreplAll.Click
'в цикле выполняем функцию поиска и меняем найденное на заменяемое
FindText()
Do While txtrng.text = Text1.Text
txtrng.text = Text2.Text
FindText()
Loop
End Sub
End Class
Дата добавления: 2015-11-28; просмотров: 77 | Нарушение авторских прав