Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> OnChange в textarea 
V
    Опции темы
mr.Anderson
Дата 5.8.2006, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 2
Всего: 128



Написал в HTML-файле вот это:
Код

<script language='vbscript'>

Sub txtMess_OnChange()

 CALL MsgBox( "Вы изменяете TEXTAREA!" )

End Sub

</script>

<html>
<form name='myform'>

<textarea name='txtMess'></textarea>

</form>
</html>

Однако ж, сообщение вылезает только в том случае, если я введу текст в textarea, а потом щелкну мышкой вне textarea. Вот тогда вылезет. Что такое?


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
cardinal
Дата 5.8.2006, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Цитата(msdn)

This event is fired when the contents are committed and not while the value is changing. For example, on a text box, this event is not fired while the user is typing, but rather when the user commits the change by leaving the text box that has focus.

http://msdn.microsoft.com/library/default....ts/onchange.asp


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
mr.Anderson
Дата 5.8.2006, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 2
Всего: 128



Ну, с моим плохим английским, я так понял, что так и должно быть? А какое же событие тогда использовать?

Добавлено @ 22:35 
Все-все, нашел OnKeyDown...


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
cardinal
Дата 6.8.2006, 01:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Цитата(sim7 @  5.8.2006,  21:31 Найти цитируемый пост)
Ну, с моим плохим английским, я так понял, что так и должно быть?

Именно.

А вообще прикольно, я и не знал, что такое (html + vb) творить можно. Может подготовишь немного материала для FAQ'a?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
mr.Anderson
Дата 6.8.2006, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 2
Всего: 128



Так. Обе статьи сделал, отослал вам на мыло. Продублирую их тут.

-------------------------------------------

Как увязать объект и его событие с VBScript

Вообще, существует несколько вариантов. Но я опишу наиболее предпочтительный.

Создаем на форме объект, присваиваем ему имя, как обычно это делается в HTML. Затем пишем НАД html-кодом следующее:
Код

<script language=’vbscript’>

Sub cmdButton_OnClick()

    Dim mess

    mess = “Вы кликнули по объекту!”

    CALL MsgBox( mess, vbInformation, “Информация” )
    document.form.txtText.value = mess

End Sub

</script>

А ПОД всем этим – HTML-код:
Код

<html>
<form name=’form’>

 <input type=’button’ name=’cmdButton’ value=’Вызов сообщения’><br>
 <input type=’text’ name=’txtText’ value=’0’>

</form>
</html>

Итак, давайте разберем порядок «увязки» VBScript с формой.

1.    Создаем HTML-код. Обязательно обрамляем весь код в теги <form></form>, причем присваиваем форме имя. Это потребуется при задании/считывании значений объектов на форме.
2.    Создаем объекты (ссылки, кнопки, текстовые поля и т.д.), обязательно присваиваем каждому имя.
3.    Над HTML-кодом пишем обрамляющие теги <script language=’vbscript’></script>.
4.    Между этими тегами пишем собственно событийные процедуры. Процедурам лучше присваивать типы Public, что эквивалентно простому объявлению Sub (вместо Public Sub). Затем пишем имя объекта на форме, а через символ подчеркивания – его событие, на которое он может реагировать (в нашем случае событие клика по объекту – OnClick() ). После имени события, разумеется, ставим пару круглых скобок.
5.    Прописываем в объявленной событийной процедуре действия, которые должны выполняться по срабатыванию события.

Вот, собственно, и все.

-------------------------------------------

Разница в синтаксисе VBScript и Visual Basic

Несмотря на то, что синтаксис VBScript и VB во многом схож, нужно знать несколько исключений. Я приведу для сравнения VB-код и затем VBScript-код.

Сначала приведу VB-код.
Код

Private Sub MySubroutine( mess, text as String, intA as Integer )
    
    Dim intB As Integer
    Let intB = 20

    Let intA = intB
    Let text = mess
    MsgBox Prompt:=text

End Sub

А теперь аналогичный VBScript-код:
Код

Sub MySubroutine( mess, text, intA )

    Dim intB
    intB = 20

    intA = intB
    text = mess
    CALL MsgBox( mess )

End Sub

А теперь поясню различия между VB и VBScript. В VBScript:

1.    Тип процедуры всегда желателен как Public (как в моем скрипте).
2.    В заголовке функции нельзя указывать типы переменных.
3.    При вызове встроенных функций и процедур нужно вызывать их через CALL.
4.    Если вы используете для задания переменных ключевое слово Let, как и я, то в VBScript придется от него отказаться.

Это основные различия. Чаще всего новички делают именно такие ошибки.

-------------------------------------------

Это сообщение отредактировал(а) sim7 - 6.8.2006, 20:10


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0430 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.