2013-11-28 127 views
1

這裏有一點我的深度。德爾福設置位標誌

我使用的是具有一定的標誌在Object Inspector組件...

FCOPY 
    Flags 
    flShowProgress 
    flConfirmation 

我需要根據一個文件被拷貝的大小來改變flShowProgess。

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

很明顯,這不會編譯。我已經做了大量的搜索以找到一些示例,但我真的不知道我需要用來找到如何執行此操作的確切術語。

有人能告訴我如何做我需要的標誌來打開flShowProgress只爲大於5M的文件,然後再關閉較小的文件?

謝謝。

+1

請顯示類型定義 –

回答

5

假設標誌是類型集的屬性。

if FileSize(aFilename) > 5000000 then // bytes! 
     FCOPY.Flags:=FCOPY.Flags+[flShowProgress] 
    else 
     FCOPY.Flags:=FCOPY.Flags-[flShowProgress] 
+0

謝謝,我錯過了方括號。經過大約20次不同的嘗試後,我幾乎完全正確,但方括號是關鍵。非常感謝你。 – user3046760

+0

它們將元素(枚舉)更改爲集合。 (枚舉)。始終保持清醒的是什麼類型的東西。這是理解類型化語言的關鍵。 –