Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  3 709

•  TDictionary Custom Sort  5 837

•  Fast Watermark Sources  5 641

•  3D Designer  8 293

•  Sik Screen Capture  5 961

•  Patch Maker  6 422

•  Айболит (remote control)  6 415

•  ListBox Drag & Drop  5 272

•  Доска для игры Реверси  94 640

•  Графические эффекты  6 608

•  Рисование по маске  5 688

•  Перетаскивание изображений  4 793

•  Canvas Drawing  5 167

•  Рисование Луны  4 898

•  Поворот изображения  4 442

•  Рисование стержней  3 147

•  Paint on Shape  2 391

•  Генератор кроссвордов  3 259

•  Головоломка Paletto  2 581

•  Теорема Монжа об окружностях  3 358

•  Пазл Numbrix  2 228

•  Заборы и коммивояжеры  2 875

•  Игра HIP  1 853

•  Игра Go (Го)  1 766

•  Симулятор лифта  2 097

•  Программа укладки плитки  1 832

•  Генератор лабиринта  2 267

•  Проверка числового ввода  1 957

•  HEX View  2 257

•  Физический маятник  1 936

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Изменить экранный курсор без необходимости возвращать предыдущий



Оформил: DeeCo

// By implementing Interface we can set the cursor without restore it in the end. 
// Example: In convensional way... 
var
   Cur: 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;




Похожие по теме исходники

База данных без BDE

БД без BDE

Кривая Безье

Bezier Curves (кривые Безье)

 

Splay Line (Безье)

Сплайн на 8 точек (Безье)

Text Bezier Curve (Безье)

Кривые Безье на OpenGL

 



Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте