下面的代碼片段適用于 DELPHI 10.4 和 FMX 框架,但不能使用 DELPHI 11 進行編譯。錯誤:maReadWrite 未定義
[dcc64 Error] ImageUnit.FMX.pas(5340): E2003 Undeclared identifier: 'maReadWrite'
如何解決這個問題以及如何撰寫使用 DELPHI 10.4 和 DELPHI 11 編譯的代碼?
var bit : TBitmap;
begin
if (Bit.Map(TMapAccess.maReadWrite, bitdata1)) then
try
for i := 0 to Bit.width - 1 do
for j := 0 to Bit.height - 1 do
begin
uj5u.com熱心網友回復:
TMapAccess以前綴開頭的值在 10.4之前ma被棄用 以洗掉前綴(即-> 、-> 、-> )。您應該在 10.4 中收到關于此的編譯器警告。maReadReadmaWriteWritemaReadWriteReadWrite
前綴值最終在 11.0 Alexandria 中完全洗掉。
因此,為兩個版本撰寫此代碼的正確方法是簡單地使用較新的無前綴值名稱,例如:
if (Bit.Map(TMapAccess.ReadWrite, bitdata1)) then
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/460926.html
上一篇:如何使用私有資料模塊與全域實體
