首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi TReader 進階屬性與事件詳解:OnError、OnFindMethod、OnSetName 實戰應用

     編輯:Delphi

TReader 進階事件與方法詳細規格

14. OnError 事件

property OnError: TReaderError。讀取錯誤時觸發。Handled (var Boolean) 預設 True 阻止進一步處理;設 False 則拋出 EReadError 異常。

15. SetName 方法

procedure SetName(Component: TComponent; var Name: String); virtual。ReadComponent 讀取名稱後呼叫,var Name 允許修改。內部觸發 OnSetName。

16. OnSetName 事件

property OnSetName: TSetNameEvent。設定 Name 屬性前觸發,var Name 可修改。實戰範例:過濾含「Button」名稱改為「PushButton」。

17-24. 核心讀取方法聲明

  • ReadValue: TValueType — 讀取型別標誌,指標後移
  • NextValue: TValueType — 僅檢視型別標誌,指標不動
  • ReadBoolean: Boolean、ReadChar: Char、ReadFloat: Extended、ReadIdent: string、ReadInteger: Longint、ReadString: string

20.2.3.2 TReader 實現詳解

1. Position 屬性實現

function TReader.GetPosition: Longint;
begin Result := FStream.Position + FBufPos; end;

procedure TReader.SetPosition(Value: Longint);
begin
  FStream.Position := Value;
  FBufPos := 0; FBufEnd := 0;
end;

繼承自 TFiler 的 FBufPos/FBufEnd 為緩衝區內部指標。Reader.Position 含緩衝區偏移,大於串流 Position。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved