Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
// By implementing Interface we can set the cursor without restore it in the end. // Example: In convensional way... varCur: TCursor; begin
Cur := Screen.Cursor; Screen.Cursor := crSQLWait; //do coding here //What happend is that if your code did not finish, the screen cursor will //remain as crSQLWait.. even with try..finally block (sometimes) Screen.Cursor := Cur; end
; // By using interface, we can implement as follows type
ImyCursor = interface
[(GUID - Ctrl - Shift - G)] end
; TmyCursor = class
(TInterfacedObjects, ImyCursor); private
FCursor: TCursor; public
constructor
Create; destructor
Destroy; override
; end
; implementation
TmyCursor.Create; begin
FCursor := Screen.Cursor; end
; TmyCursor.Destroy; begin
Screen.Cursor := FCursor; inherited
; end
; procedure
....var
C: ImyCursor; begin
C := TmyCursor.Create; Screen.Curosr := crSQLWait; // whatever cursor you like // Do coding here without worring to free it. // Screen Cursor will restore when the TMyCursor object get out of scope. end
;