powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ReportListener прерывание рендеринга
2 сообщений из 2, страница 1 из 1
ReportListener прерывание рендеринга
    #34541518
Pr0teus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть форма, в Init'е которой делаются следующие действия

Код: plaintext
1.
2.
3.
4.
5.
.ReportObject = NEWOBJECT('ReportListener')
.ReportObject.ListenerType =  3 
SELECT (lcAlias)

REPORT FORM (.ReportForm) OBJECT .ReportObject

Беда в том, что если в текущем Alias'е много записей (у меня более 150 000), то выполнение REPORT FORM (.ReportForm) OBJECT .ReportObject выливается в получасовой марафон, который пока не ясно как прервать. Может кто знает, как прекратить данное безобразие по ESC или по какой другой кнопке.
...
Рейтинг: 0 / 0
ReportListener прерывание рендеринга
    #34542199
Pr0teus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пока придумал такое решение

Делаю класс на основе RenderListener
Свойство LisyenerType выставляю в 0

В методе Render пишу следующее

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
llFlag = GetAsyncKeyState(0x1B)

IF llFlag <>  0  THEN
  THIS.
  THIS.CancelReport()
ELSE
  DODEFAULT(nFRXRecno, nLeft, nTop, nWidth, nHeight, nObjectContinuationType, cContentsToBeRendered, GDIPlusImage)
ENDIF

Далее предыдущий код превращается в

Код: plaintext
1.
2.
3.
4.
5.
.ReportObject = NEWOBJECT('MyReportListener')
.ReportObject.ListenerType =  3 
SELECT (lcAlias)

REPORT FORM (.ReportForm) OBJECT .ReportObject
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ReportListener прерывание рендеринга
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]