Code: |
// Define FLASHWINFO structure as record type type FLASHWINFO = record cbSize: UINT; hWnd: HWND; dwFlags: DWORD; uCount: UINT; dwTimeOut: DWORD; end; TFlashWInfo = FLASHWINFO;
// Define dwFlags constants const FLASHW_STOP = 0; FLASHW_CAPTION = 1; FLASHW_TRAY = 2; FLASHW_ALL = FLASHW_CAPTION or FLASHW_TRAY; FLASHW_TIMER = 4; FLASHW_TIMERNOFG = 12;
var Form1: TForm1; FWInfo: TFlashWInfo;
// Function declaration for WinAPI call function FlashWindowEx(var pfwi: FLASHWINFO): BOOL; stdcall;
{...}
implementation
{...}
// Import external function from 'USER32.DLL' with the same name function FlashWindowEx; external user32 Name 'FlashWindowEx';
procedure TForm1.FormCreate(Sender: TObject); begin // Check for API function's availability if not Assigned(@FlashWindowEx) then begin ShowMessage('API Function FlashWindowEx is not present... Exit program!'); Application.Terminate; end else // Set default parameters with FWInfo do begin cbSize := SizeOf(FWInfo); // Size of structure in bytes hWnd := Form1.Handle; // Main's form handle dwFlags := FLASHW_ALL; // Flash both caption & task bar uCount := 10; // Flash 10 times dwTimeOut := 100; // Timeout is 1/10 second apart end; end;
procedure TForm1.Button1Click(Sender: TObject); begin // Flash on normal state FlashWindowEx(FWInfo); end;
procedure TForm1.Button2Click(Sender: TObject); begin // Flash on minimized state WindowState := wsMinimized; // Application.Minimize; FlashWindowEx(FWInfo); end;
|
- << Назад
- Вперёд
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!