100-процентная загрузка процессора

Материал из GedeminWiki
(Различия между версиями)
Перейти к: навигация, поиск
 
 
Строка 1: Строка 1:
 +
Если в обработчике события OnUpdate компонента [[TAction]] сначала идет присваивание свойства Enabled = True, а затем Enabled = False, то можем получить 100% загрузки процессора при отображении такой формы на экране.
  
Если в обработчике события OnUpdate компонента TAction сначала идет присваивание свойства Enabled = True, а затем Enabled = False, то можем получить 100% загрузки процессора при отображении такой формы на экране. Например, рассмотрим такой код:
+
Например, рассмотрим такой код:
  
 
  option explicit
 
  option explicit
Строка 27: Строка 28:
 
   end if
 
   end if
 
  end sub
 
  end sub
 +
 +
[[Category:Работа над ошибками]]

Текущая версия на 12:08, 15 января 2009

Если в обработчике события OnUpdate компонента TAction сначала идет присваивание свойства Enabled = True, а затем Enabled = False, то можем получить 100% загрузки процессора при отображении такой формы на экране.

Например, рассмотрим такой код:

option explicit
sub actNewOnUpdate(ByVal Sender)
'*** Данный код необходим для вызова встроенного обработчика ***
'*** В случае его удаления возможно нарушение работы системы ***
  call   Inherited(Sender, "OnUpdate", Array(Sender))
'*** конец кода поддержки встроенного обработчика            ***

  Sender.Enabled = not Sender.Owner.FindComponent("usrg_gdcEmployee").IsEmpty
end sub

сначала вызываем наследованный обработчик, который, например, установит Enabled = True, а потом переприсваиваем Enabled в False. Естественно получаем 100% загрузку процессора.

В данном случае, правильно писать так:

option explicit
sub actNewOnUpdate(ByVal Sender)
  if Sender.Owner.FindComponent("usrg_gdcEmployee").IsEmpty then
    Sender.Enabled = False
  else
    '*** Данный код необходим для вызова встроенного обработчика ***
    '*** В случае его удаления возможно нарушение работы системы ***
      call   Inherited(Sender, "OnUpdate", Array(Sender))
    '*** конец кода поддержки встроенного обработчика            ***
  end if
end sub
Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты