Вызов процедуры Таймера и возврат к вызвавшей процедуре.

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

Вызов процедуры Таймера и возврат к вызвавшей процедуре.

Сообщение TrueTrue » 21.03.2017 (Вт) 9:32

Ребят, чёт я потерялся, не могу сообразить, как лучше это сделать. Вобщем.

На Form2 eсть таймер, внутри него опеределённая процедура проверки. Эту процедуру мне нужно вызывать из любого места программы. Мне нужно передавать параметры в эту процедуру и возвращать программу обратно в то место, откуда я вызвал этот таймер. Тоесть таймер в виде функции.

Я думал сделать контролом. Проблема в том, что этот таймер использует объекты Form3 и я что-то не очень представляю как к ним обращаться изнутри Контрола.

Сейчас вот подумал, наверное нужно организовать таймер процедуру програмно внутри процедуры. Только я что-то не очень понимаю как это сделать, подскажите.

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

Re: Вызов процедуры Таймера и возврат к вызвавшей процедуре.

Сообщение alibek » 21.03.2017 (Вт) 9:40

Нарисуй логическую блок-схему и составь код в соответствии с ней.
Если процедура проверки может вызываться из любого места программы, она должна быть оформлена как отдельная функция/процедура, а не как фрагмент кода внутри обработчика таймера.
Чтобы работать с объектами формы, нужно в процедуру передать ссылку на экземпляр формы (или использовать публичную ссылку).
Асинхронную задержку можно сделать разными способами, в «кирпичах» есть несколько примеров.
Lasciate ogni speranza, voi ch'entrate.

TrueTrue
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 167
Зарегистрирован: 20.05.2009 (Ср) 23:18

Re: Вызов процедуры Таймера и возврат к вызвавшей процедуре.

Сообщение TrueTrue » 21.03.2017 (Вт) 10:39

Спасибо.

Хорошо, а как я могу передать в ФУНКЦИЮ в виде параметра в значении переменной, НАЗВАНИЕ вызываемой Функции? А так же, как из ЗНАЧЕНИЯ переменной с названием ФУНКЦИИ получить это название и перейти к той функции которую содержит эта переменная? В VB такое сделать реально?

тоесть допустим:

Код: Выделить всё
Function Func1()
        Func2(Func1???)
End Function


Function Func2(X as FunctionName???)

End Function
Последний раз редактировалось TrueTrue 21.03.2017 (Вт) 10:43, всего редактировалось 1 раз.

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

Re: Вызов процедуры Таймера и возврат к вызвавшей процедуре.

Сообщение alibek » 21.03.2017 (Вт) 10:40

CallByName.
В 99% случаев это означает неправильную архитектуру.
Lasciate ogni speranza, voi ch'entrate.

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

Re: Вызов процедуры Таймера и возврат к вызвавшей процедуре.

Сообщение Хакер » 21.03.2017 (Вт) 10:47

А ещё функции можно обернуть в объекты и получить в VB функторы.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

TrueTrue
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 167
Зарегистрирован: 20.05.2009 (Ср) 23:18

Re: Вызов процедуры Таймера и возврат к вызвавшей процедуре.

Сообщение TrueTrue » 22.03.2017 (Ср) 22:27

Спасибо за помощь, ребята! Всё получилось!))


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

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

Сейчас этот форум просматривают: Google-бот и гости: 28

    TopList