Delphi Установка битовых флагов

Немного из моей глубины здесь.

Я использую компонент, который имеет несколько флагов в Инспекторе объектов...

FCOPY
  Flags
    flShowProgress
    flConfirmation

Мне нужно изменить flShowProgess в зависимости от размера копируемого файла.

if FileSize(aFilename) > 500000 then 
  FCOPY.Flags.flShowProgress:=True else
  FCOPY.Flags.flShowProgress:=False;

Очевидно, что не компилируется. Я проделал кучу поисков, чтобы найти несколько примеров, но я действительно не знаю точных терминов, которые мне нужно использовать, чтобы найти, как это сделать.

Может кто-нибудь показать мне, как сделать то, что мне нужно, с помощью флагов, чтобы включить flShowProgress только для файлов размером более 5M, а затем снова отключить для файлов меньшего размера?

Спасибо.

1 ответ

Решение

Предполагая, что флаги - это свойство типа set.

    if FileSize(aFilename) > 5000000 then  // bytes!
      FCOPY.Flags:=FCOPY.Flags+[flShowProgress]
    else
      FCOPY.Flags:=FCOPY.Flags-[flShowProgress]
Другие вопросы по тегам