powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / События в стеке
5 сообщений из 5, страница 1 из 1
События в стеке
    #33752662
Sea.s2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi Alles

Значит так имеется один toolbar для всех форм в нем есть кнопка по click'у на которой вызывается определенная функция.

Запускается не модальная форма. В Toolbare производим click на этой кнопке.

Запускается модальная форма и щелчок по этой кнопке не вызывает срабатывание этого метода.

Получается что первый click по кнопке сидит в стеке и пока он не завершится повторный не срабатывает. Как мне разрешить иту проблему?
...
Рейтинг: 0 / 0
События в стеке
    #33752796
Sea.s2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Неужели никто ничего не понил?

Событие click не завершается пока не закроем модальную форму но панель то одна.

При повторном щелчке событие не происходит

Например таже функция хоть сколько раз может вызываться по контекстному меню а в toolbar'e не более одного раза
...
Рейтинг: 0 / 0
События в стеке
    #33752976
po2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
po2
Гость
Обсуждения по ссылкам:
foxclub.ru ,
foxclub.ru ,
foxclub.ru
...
Рейтинг: 0 / 0
События в стеке
    #33754483
Sea.s2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Седна утром сам допер до такого

А в статьях тоже самое только в более извращенных вариантах :))

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
DEFINE CLASS scrTimer AS Timer

 Enabled  = .F.
 Interval =  1 
 Action   = .F.
 AlsoDoes = .F.
  
 PROCEDURE Timer()
   IF This.AlsoDoes <> .T.
     This.Enabled  = .F.
     This.AlsoDoes = .T.
     KeyLabel(This.Action)
   ENDIF
 ENDPROC
 
ENDDEFINE

В событии CLICK()

procedure click()
IF TYPE("_screen.scrTimer1") # "U"
  _screen.RemoveObject("scrTimer1")
ENDIF

_screen.AddObject("scrTimer1", "scrTimer")
_screen.scrTimer1.Action = "INS"
_screen.scrTimer1.Enabled = .T.
endproc

...
Рейтинг: 0 / 0
События в стеке
    #33755682
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Sea!

Click кнопки нереентерабелен. Нужно обеспечить завершение этого обработчика
чтобы он смог снова срабатывать. OneShotTimer для этого подходит лучше
всего.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / События в стеке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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