Цвет текста

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
artful84
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 28.12.2005 (Ср) 2:04
Откуда: 2la

Цвет текста

Сообщение artful84 » 07.12.2006 (Чт) 16:20

Люди, помогите советом, пожалуйста :)

Допустим я открываю страницу в WebBrowser. На ней расположен какой-то текст, который в разных местах имеет разный цвет. Как можно определить цвет части текста, желательно исключив возню с кодом страницы? И как скопировать текст, сохранив форматирование, в буфер обмена? Пробовал через SetText - цвет не сохраняется.
Дилетант

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 07.12.2006 (Чт) 16:30

В браузере SetText работать не будет.
Либо работай со страницей (с ее кодом), либо через DOM.
Lasciate ogni speranza, voi ch'entrate.

artful84
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 28.12.2005 (Ср) 2:04
Откуда: 2la

Сообщение artful84 » 07.12.2006 (Чт) 16:33

alibek писал(а):В браузере SetText работать не будет.
Либо работай со страницей (с ее кодом), либо через DOM.

Прошу прощения, некорректно вопрос поставил.
Код: Выделить всё

Private Sub Command1_Click()
    Dim d As New MSHTML.HTMLDocument
    Set d = wb1.Document
    Clipboard.Clear
    Clipboard.SetText d.documentElement.innerText
    scode = d.documentElement.innerText
    Set d = Nothing
End Sub

Таким образом можно цвет получить (с помощью MS HTML Lib)? Если да, то дайте, пожалуйста, направление, куда копать :)
Дилетант

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 08.12.2006 (Пт) 15:01

Таким образом можно получить только сам текст, а что бы получить цвет... ничего не приходит на ум кроме, того, как получить из HTML кода значение цветов при помощи регулярных выражений или получать значение цвета при помощи myElement.getAttribute("color"), если конечно цвет задан через "color".
Salus populi suprema lex

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 08.12.2006 (Пт) 15:21

style смотри у элемента или смотри стиль для всего документа , если он задан через класс.

artful84
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 28.12.2005 (Ср) 2:04
Откуда: 2la

Сообщение artful84 » 08.12.2006 (Пт) 15:59

Все, спасибо всем. Разобрался.
Дилетант

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 08.12.2006 (Пт) 16:06

Это зависит от того как задан цвет - через атрибут color, через стиль, через css. Соответственно и способы разные.
1. Как сказал dr.MIG
2. myElement.style.color
3. Придется разбирать таблицу стилей.
Лучший способ понять что-то самому — объяснить это другому.

Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1668
Зарегистрирован: 17.06.2006 (Сб) 15:11

Сообщение Debugger » 08.12.2006 (Пт) 22:27

Разбираем по частям на <FONT>, </font> и не фонт.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16

    TopList  
cron