Как показать модально форму c продолжением выполнения кода?

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

Как показать модально форму c продолжением выполнения кода?

Сообщение McCar » 07.05.2004 (Пт) 13:44

Народ, направьте мои мысли в нужное русло плиз...
Я создаю activeX контрол для связи с карманным компьютером Pocket PC. При этом я хочу задать таймаут для метода , выполняющего соединение с Pocket PC, и в процессе соединения показывая некое информационное окошко, которое закрывается после timeout миллисекунд.
Вот код
isTimeOuted = False

FormConnect.Label2.Caption = "в течение " & timeOut / 1000 & "секунд"
FormConnect.Timer1.Interval = timeOut

FormConnect.Show (0)

Do ' в цикле пытаемся приконнектится к PocketPC
Call CeRapiInitEx(pRapiInit)
RapiSyncConnect = RapiGetCEOSVersionString <> ""

If RapiSyncConnect Then
FormConnect.Timer1.Enabled = False
Unload FormConnect
Exit Do
End If

DoEvents
If isTimeOuted Then Exit Do
Loop


На форме находится таймер, которому через timeout эту форму захлопывает, устанавливает переменную isTimeOuted в True, после чего происходит выход из цикл в модуле класса (если выход не произошел по причине соединения -(RapiSyncConnect =true))
Если из модуля класса мы показываем форму немодально, то все работает как задумано. - из проектов на VB
Но скомпилированный таким образом компонент не хочет работать из FoxPro и 1С - выдает ошибку, что из active X компонента нельзя показывать форму немодально.
Если эту же форму показывать модально ( FormConnect.Show (1)) , то
после показа этой формы выполнение кода в цикле не продолжается и соединения с покетом не происходит.
Пробовал создавать таймер не на форме , а через createobject, - тоже
тоже ничего не вышло.
Что посоветуете??

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

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

Сейчас этот форум просматривают: AhrefsBot и гости: 2

    TopList