How TVisualGrid admits one fetch at a time, keeps only the latest request and discards cancelled background results, using RefreshSuspended, CancelActiveFetch and RefreshThrottle.
Read article
How TVisualGrid admits one fetch at a time, keeps only the latest request and discards cancelled background results, using RefreshSuspended, CancelActiveFetch and RefreshThrottle.
Read articleAdd read-ahead to any TStream with TBufferedStream, understand its logical and underlying cursors, and hand the source to another reader with FlushUnreadData.
Read article
Build a TWizard whose screens validate input, change the remaining route with UpdatePath, keep their state when removed from the path and allow Finish to be retried.
Read articleDerive a cache from TCacheBase and choose its expiration, staleness, eviction and dispose policies so cached objects are fetched, replaced and freed predictably.
Read article
Use TDisposables to free a group of objects in reverse order at scope exit, and TScope to return a lock acquisition with its release attached.
Read articleWrite one TVisualGrid configuration and one typed data source that compile for both Delphi VCL and Lazarus LCL, and see where the compiler-specific boundary sits.
Read article
Coalesce bursts of UI notifications into one handler call with TThrottledEvent, choose a delivery mode, and observe or cancel pending delivery.
Read articleUse TReadWriteLock's upgradeable read mode to inspect shared state and promote to a write lock without a release-and-recheck gap.
Read article
Use TVisualGrid page modes to show all rows, a fixed page size or as many rows as fit the window, with one data source and one set of column bindings.
Read articleImplement a TCustomDataSource, describe filters and sorts with TColumnFilter, and use its snapshot cache to page a filtered, sorted dataset without reloading it.
Read article
Showing 1–10 of 10 articles