Ребята, я не профи в VB но то что я пишу вроде ничего сложного как мне кажется не представляет/ло , пока не возникла проблемка в возврате через 5 минут простоя (т.е. если пользователь потыркал потыркал по экрану, получил свою информацию и ушёл, инфокиоск стоит просто без дела) на стартовую страницу инфокиоска в webbrowser-ре. Сделал вот так:
- Код: Выделить всё
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
ReturnPage.Enabled = False 'останавливаем таймер
ReturnPage.Enabled = True 'запускаем таймер
End Sub
- Код: Выделить всё
Private Sub ReturnPage_Timer() 'таймер возврата на титульную страницу через 5 минут
Static MinCounter As Integer
MinCounter = MinCounter + 1
If MinCounter = 5 Then
MinCounter = 0
'WebBrowser1.Refresh
Dim StartPage As String
Call RegRead("StartPage", StartPage) 'считываем адрес титульной страницы из реестра
BrowserHTMLinternet StartPage 'грузим её в браузер, если страница не грузится
'возникает событие NavigateError которое запускает таймер ReloadPage,
'который пытается повторно открыть титульную страницу
End If
End Sub
- Код: Выделить всё
Private Sub WebBrowser1_NavigateError(ByVal pDisp As Object, URL As Variant, Frame As Variant, StatusCode As Variant, Cancel As Boolean)
BrowserHTMLresurce "err-load-page.htm" 'при возникновении ошибки при загрузке страницы
'выводим страницу с сообщением об ошибке
'и запускаем таймер для повторной загрузки страницы
Dim ReloadStartPage As String
Call RegRead("ReloadStartPage", ReloadStartPage) 'считываем из реестра интервал таймера для обновления страницы
ReloadPage.Interval = ReloadStartPage 'подставляем его в таймер ReloadPage
ReloadPage.Enabled = True 'запускаем таймер
ReturnPage.Enabled = False 'останавливаем таймер
End Sub
- Код: Выделить всё
Private Sub ReloadPage_Timer() 'таймер повторной загрузки страницы через 30 секунд
Dim StartPage As String
Call RegRead("StartPage", StartPage) 'считываем адрес титульной страницы из реестра
BrowserHTMLinternet StartPage 'грузим её в браузер, если страница не грузится
'возникает событие NavigateError и повторно запускается
'таймер ReloadPage, который пытается повторно открыть страницу
ReloadPage.Enabled = False
End Sub
Но почемуто всёравно вовремя работы с инфокиоском он меня возвращает на стартовую страницу. Я уже подумал может отслеживать нажатия по экрану, его события вроде бы как нажатие левой кнопки мыши. Так ли это? И как тогда это реализовать?
Благодарю за помощь.