Появилась идея, не знаю, как реализовать!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Debugger
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1667
Зарегистрирован: 17.06.2006 (Сб) 15:11

Появилась идея, не знаю, как реализовать!

Сообщение Debugger » 29.10.2006 (Вс) 10:02

Делаю VBScript - редактор. Дошло дело до плодсветки. И вдруг пришла идея: почему бы вместо текстового поля поставить WebBrowser (подсветка), а когда мы кликаем и начинаем печатать, подставлять TextBox в три строки без Border'a. И при Enter'e, и при Bs'e мы переводим на строку вперёд\назад & просчитываем текущую строку & ставим TextBox.

Serge Gavrilov
Начинающий
Начинающий
 
Сообщения: 19
Зарегистрирован: 26.01.2006 (Чт) 11:35

Сообщение Serge Gavrilov » 29.10.2006 (Вс) 10:38

А может просто в WebBrowser печатать?

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

Сообщение Debugger » 29.10.2006 (Вс) 13:42

Я не разу не видел, чтобы в цветной Web Browser печатали. По идее и так тормозить будет, а ещё с нагрузкой...
Вот в чём вопрос: как отследить клик по WB и найти строку, по которой кликнули?

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

Сообщение Antonariy » 29.10.2006 (Вс) 14:34

document.parentWindow.event.srcElement.innerText
Лучший способ понять что-то самому — объяснить это другому.

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

Сообщение Debugger » 29.10.2006 (Вс) 14:47

Me.Caption = WebBrowser1.Document.parentWindow.event.srcElement.innerText

Не идёт! Object Variable Not Set

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Появилась идея, не знаю, как реализовать!

Сообщение Хакер » 29.10.2006 (Вс) 15:44

Debugger писал(а):Делаю VBScript - редактор. Дошло дело до плодсветки. И вдруг пришла идея: почему бы вместо текстового поля поставить WebBrowser (подсветка), а когда мы кликаем и начинаем печатать, подставлять TextBox в три строки без Border'a. И при Enter'e, и при Bs'e мы переводим на строку вперёд\назад & просчитываем текущую строку & ставим TextBox.


Интересно, зачем делать это именно "так"?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

yaklit
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 129
Зарегистрирован: 09.09.2006 (Сб) 19:38

Сообщение yaklit » 29.10.2006 (Вс) 20:30

эээ а разве нельзя сделать, например просто, через RTB? Он вроде позволяет менять цвет...

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 29.10.2006 (Вс) 20:35

Более того, для этого есть всякие там CodeMax-ы.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

yaklit
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 129
Зарегистрирован: 09.09.2006 (Сб) 19:38

Сообщение yaklit » 29.10.2006 (Вс) 20:40

Нуну... WebBrowser не самая подходящяя для РЕДАКТИРОВАНИЯ текста весчь. А вот для просмотра она удобна.......

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

Сообщение Antonariy » 29.10.2006 (Вс) 21:48

Debugger писал(а):Me.Caption = WebBrowser1.Document.parentWindow.event.srcElement.innerText

Не идёт! Object Variable Not Set
Который из цепочки объектов not set? Рискну предположить, что event, а печатаешь не из doc_onclick().
Лучший способ понять что-то самому — объяснить это другому.

Sergeant Pepper
Новичок
Новичок
 
Сообщения: 31
Зарегистрирован: 25.08.2006 (Пт) 8:49

Сообщение Sergeant Pepper » 29.10.2006 (Вс) 21:57

yaklit писал(а):Нуну... WebBrowser не самая подходящяя для РЕДАКТИРОВАНИЯ текста весчь.
а чем конкретно WebBrowser неудобен?

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

Сообщение Debugger » 29.10.2006 (Вс) 22:03

yaklit писал(а):эээ а разве нельзя сделать, например просто, через RTB? Он вроде позволяет менять цвет...

Все прекрасно знают, что при наборе 50к символов RTB не пригоден...
Нуну... WebBrowser не самая подходящяя для РЕДАКТИРОВАНИЯ текста весчь. А вот для просмотра она удобна.......

Ну да. А если сверху TextBox?
Который из цепочки объектов not set? Рискну предположить, что event, а печатаешь не из doc_onclick().

Не из doc_onclick.
<Позже>А где это?
<Ещё позже>В самом доке, что ли?
Последний раз редактировалось Debugger 29.10.2006 (Вс) 22:05, всего редактировалось 1 раз.

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 29.10.2006 (Вс) 22:03

А ты попробуй сделать :lol:
Изображение

Sergeant Pepper
Новичок
Новичок
 
Сообщения: 31
Зарегистрирован: 25.08.2006 (Пт) 8:49

Сообщение Sergeant Pepper » 29.10.2006 (Вс) 23:10

keks-n писал(а):А ты попробуй сделать :lol:

Извините, это кому?

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

Сообщение Antonariy » 30.10.2006 (Пн) 9:56

Debugger
event не nothing в обработчиках событий HTMLDocument.
Лучший способ понять что-то самому — объяснить это другому.

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

Сообщение Debugger » 30.10.2006 (Пн) 10:01

Чё-то я совсем запутался. Где конкретно: в самом VB-коде (типа WebBrowser_onclick) или в JavaScript'e в самом HTML (function HTMLdoc_onclick)

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

Сообщение Antonariy » 30.10.2006 (Пн) 10:15

HTMLDocument_onclick() :!::!::!:
А в скрипте само собой.
Лучший способ понять что-то самому — объяснить это другому.

Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Сообщение Dromok » 30.10.2006 (Пн) 12:28

а зачем такие сложности с текстбоксами? В WebBrowser есть режим редактирования. Где-то на форуме здесь это уже обсуждалось, непомню где. А подставлять текстбоксы не самая лучшая идея.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 30.10.2006 (Пн) 13:23

Dromok писал(а):а зачем такие сложности с текстбоксами? В WebBrowser есть режим редактирования. Где-то на форуме здесь это уже обсуждалось, непомню где. А подставлять текстбоксы не самая лучшая идея.


Да ну? Может быть этот режим, это абсолютно другой контрол? DHTMLEdit например? Или может быть это
Код: Выделить всё
With WebBrowser1
.Naviage "abount:blank"
.Document.Write "<body style=""padding: 0; margin: 0"">"
.Document.Write "<textarea style=""width:100%; height: 100%; margin: 0""></textarea>"
.Document.Write "</body>"
End With


:lol:
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

NashRus
Постоялец
Постоялец
 
Сообщения: 388
Зарегистрирован: 18.03.2006 (Сб) 1:16

Сообщение NashRus » 30.10.2006 (Пн) 15:11

Да ну? Может быть этот режим, это абсолютно другой контрол?


MSHTML Editing

Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Сообщение Dromok » 30.10.2006 (Пн) 16:20

Хакер писал(а):Да ну? Может быть этот режим, это абсолютно другой контрол? DHTMLEdit например?:lol:

а про WebBrowser.Document.designMode = "On" тут никто незнает?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 30.10.2006 (Пн) 16:36

Dromok
Ты понимаешь абсурдность использования данного метода, в качестве контрола для подсветки кода?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Сообщение Dromok » 30.10.2006 (Пн) 16:41

Хакер

В чем же абсурдность? Мне кажется абсурдным навешивать дополнительные текстбоксы, когда в компоненте уже есть всё необходимое для редактирования и отоброжения информации в нужном виде. Хотя я бы не стал использовать этот контрол, по причине того что длл'ка компонента весит около 2 метров (точно непомню скока). А я свои проги распространяю в основном через инет и размер имеет значение :)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 30.10.2006 (Пн) 16:45

Абсурден весь топик. И надо попытаться наставить автора на путь истины. И дать ему понять, что для подсветки и редактирования кода надо юзеать RTB или CodeMax-ы или самодельные контролы, но никак не вэб броузеры.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Сообщение Dromok » 30.10.2006 (Пн) 16:51

RTB весьма ограничен в своих возможностях и неудобен в использовании. CodeMax каюсь никогда не юзал.
А вот что может быть удобнее веббраузера для отоброжения информации? Здесь тебе и каскадные таблицы стилей и простая вставка картинок, да что тут говорить хоть флеш туда втыкай. Какой еще компонент может похвастаться такими возможностями отоброжения информации? Хотя повторюсь, я бы конечно юзал самопальный контрол по причинам озвученым мною выше.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 30.10.2006 (Пн) 16:58

RTB очень удобен. И про 50 кб ограничение - это тоже миф. Возможно не миф про 64 кб (т.е. 65536 байт) ограничения, но и в этом я сомневаюсь. Bred2r юзает именно RTB. Но в нём я открывал 60-метровые файлы.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Сообщение Dromok » 30.10.2006 (Пн) 17:04

Я например одно время использовал WebBrowser для отображения отчетов... тут много плюсов... и легкая конвертация в ворд, эксель... и элементарный вывод на печать и т.д. Сейчас правда перешел на свой собственный контрол, он более удобен для меня :)

Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Сообщение Dromok » 30.10.2006 (Пн) 17:11

Хакер писал(а):RTB очень удобен. И про 50 кб ограничение - это тоже миф. Возможно не миф про 64 кб (т.е. 65536 байт) ограничения, но и в этом я сомневаюсь. Bred2r юзает именно RTB. Но в нём я открывал 60-метровые файлы.

Ну ваще да... если чисто для подсветки синтаксиса, то лучше RTB юзать. Просто чтото я немного в другую степь полез, забыв о сути проблемы :)

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

Сообщение Debugger » 30.10.2006 (Пн) 17:17

Antonariy писал(а):HTMLDocument_onclick() :!::!::!:
А в скрипте само собой.

Не идёт:
Код: Выделить всё

Private Sub HTMLDocument_onclick()
MsgBox "123"
End Sub

Никак.

А вот RTB не хочу по... Не знаю почему.... Может, я слишком долго юзал WB и сел "на иглу"? Моржно линк с примером подсветки (т.к. я ввожу, он сразу светит)

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

Сообщение Konst_One » 30.10.2006 (Пн) 17:21

scintilla - вот, что поможет отцу русской демократии :wink:

След.

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

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

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

    TopList