4 / 4 / 0
Регистрация: 12.09.2011
Сообщений: 148
|
|
1 | |
Создать событие onchange на изменение переменной23.10.2012, 10:55. Показов 5872. Ответов 14
Метки нет (Все метки)
Ребята! Привет! Вопрос такой: есть переменная, которая постоянно изменяется(неважно почему). Надо сделать событие наподобии,которое есть в textboxе "textchange", чтобы как только она(переменная) менялась выскакивал ивент. Прочитал MSDN нифига не понял. Заранее спасибо!
0
|
23.10.2012, 10:55 | |
Ответы с готовыми решениями:
14
Создать событие на изменение переменной Создать событие на изменение значения переменной Событие onChange Событие onchange |
96 / 96 / 3
Регистрация: 01.12.2011
Сообщений: 94
|
||||||
23.10.2012, 11:16 | 2 | |||||
Вот в примере программа следит за состоянием переменной с именем "переменная".
На форме кнопка, при нажатии на кнопку значение переменной изменяется и соответственно показывается сообщение.
0
|
23.10.2012, 11:20 | 3 |
Как идея.
При загрузке формы запускается процедура, которая в бесконечном цикле сравнивает старое и новое значение переменной. Обязательно включить DoEvents. Если изменение есть - смена старого на новое и обработка события. Как. Удачи. Добавлено через 1 минуту Извините не увидел вадим2. Не писал бы.
0
|
96 / 96 / 3
Регистрация: 01.12.2011
Сообщений: 94
|
|
23.10.2012, 11:23 | 4 |
Ничего)) Только лучше в поток этот цикл запихнуть, так как при DoEvents программа не заедает, но ничего сделать нельзя
0
|
1710 / 1198 / 227
Регистрация: 23.12.2010
Сообщений: 1,527
|
||||||
23.10.2012, 11:50 | 6 | |||||
а так?
1
|
4 / 4 / 0
Регистрация: 12.09.2011
Сообщений: 148
|
|
23.10.2012, 14:02 [ТС] | 8 |
Дмитрий, Что такое "T"?
0
|
1710 / 1198 / 227
Регистрация: 23.12.2010
Сообщений: 1,527
|
|
23.10.2012, 14:31 | 9 |
просто обозначение типа. Он в-общем случае (в теле класса не указан).
Это дает возможность на основе одного и того же класса создавать экземпляры переменных разных типов. Смотри на стр.№3 в моем коде - там объявлена переменная NewVar как новый экземпляр класса MyVariable и указано, что это будет тип String. Соотв. и свойство Value будет типа String для переменной NewVar. Никто не мешает рядом объявить другую переменную - экземпляр класса MyVariable но с другим типом. И потом обрабатывать и ее событие OnClick отдельно от аналогичного события NewVar
1
|
4 / 4 / 0
Регистрация: 12.09.2011
Сообщений: 148
|
|
23.10.2012, 14:57 [ТС] | 10 |
Дмитрий, спасибо! Еще один вопросик: как сделать так, чтобы событие возникало реально при изменении переменной: просто ее значение может повторяться несколько раз подряд( в дебуггере будет выглядеть так:4,2,2,2,2,2,8) а мне надо чтобы приходили значение (4,2,8)Вот так
0
|
1710 / 1198 / 227
Регистрация: 23.12.2010
Сообщений: 1,527
|
||||||
23.10.2012, 15:04 | 11 | |||||
как-то так:
0
|
4 / 4 / 0
Регистрация: 12.09.2011
Сообщений: 148
|
|
23.10.2012, 15:13 [ТС] | 12 |
Дмитрий! СУПЕР! СПАСИБО!
Может подскажите какую-нибудь хорошую литературку по VB.net и VS2010? СПАСИБО!
0
|
1710 / 1198 / 227
Регистрация: 23.12.2010
Сообщений: 1,527
|
|
23.10.2012, 15:16 | 13 |
да в гугл залезь и скачай. Скорее всего будет все интересно.
1
|
4 / 4 / 0
Регистрация: 12.09.2011
Сообщений: 148
|
||||||
23.10.2012, 15:46 [ТС] | 14 | |||||
0
|
1710 / 1198 / 227
Регистрация: 23.12.2010
Сообщений: 1,527
|
|||||||||||
23.10.2012, 16:17 | 15 | ||||||||||
ну тут уж как ты указал в коде. Конечно, они не одновременно оба изменяются. Ну и тогда количество вызовов "процедуры" будет зависеть от того, на что изменились эти значения.
Т.е. положим, что у тебя в коде есть фрагмент:
Тогда Call Sub(процедура) будет 2 раза. А вот если
Или если старое значение 2.value>-59 то вызовется 1 раз. А изменение значений идет в одном потоке (ну если ты специально с потоками не химичишь) и причем в той очередности, как прописано у тебя в коде.
1
|
23.10.2012, 16:17 | |
23.10.2012, 16:17 | |
Помогаю со студенческими работами здесь
15
Не могу сделать событие на изменение данных в переменной , int или CString Тег Select событие onchange событие onchange тэга select Вычисления по условию. Событие OnChange Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |