Сейчас на форуме: tyns777, zombi-vadim (+3 невидимых) |
![]() |
eXeL@B —› Программирование —› restore back System cursor how? |
Посл.ответ | Сообщение |
|
Создано: 28 марта 2008 16:48 · Личное сообщение · #1 var Form1: TForm1; implementation {$R *.dfm} {$R MyAniCursors.res} const AniWait = 1; function SaveResourceAsTempFile(const ResName: string; ResType: pchar): string; var TempFileName: array [0..MAX_PATH-1] of char; TempDir: array [0..MAX_PATH-1] of char; begin GetTempPath(MAX_PATH, TempDir); if GetTempFileName(TempDir, '~', 0, TempFileName) = 0 then raise Exception.Create(SysErrorMessage(GetLastError)); Result := TempFileName; with TResourceStream.Create(hInstance, ResName, ResType) do try SaveToFile(result); finally Free; end; end; function GetResourceAsAniCursor(const ResName: string): HCursor; var CursorFile: string; begin CursorFile := SaveResourceAsTempFile(ResName, 'ANICURSOR'); Result := LoadImage(0, PChar(CursorFile), IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE or LR_LOADFROMFILE); DeleteFile(CursorFile); if Result = 0 then raise Exception.Create(SysErrorMessage(GetLastError)); end; procedure TForm1.Button1Click(Sender: TObject); var Save_Cursor,sos : TCursor; begin Save_Cursor := Screen.Cursor; sos:=GetCursor; Screen.Cursor := AniWait; SetSystemCursor(Screen.Cursors[AniWait], OCR_NORMAL); try showmessage('BOOYA'); finally Screen.Cursor := Save_Cursor;//Always restore to normal( i can't restore it)???? SetSystemCursor(sos, OCR_NORMAL);//( i can't restore it)???? end; end; //i can't restore it!!!!! ![]() |
|
Создано: 28 марта 2008 17:23 · Личное сообщение · #2 |
|
Создано: 28 марта 2008 17:56 · Личное сообщение · #3 |
![]() |
eXeL@B —› Программирование —› restore back System cursor how? |