Чтение онлайн

ЖАНРЫ

Советы по Delphi. Версия 1.4.3 от 1.1.2001

Озеров Валентин

Шрифт:

 While Child <> 0 do Begin

If GetClassName(Child, C, SizeOf(C)) > 0 Then Begin

S := StrPAS(C);

If UpperCase(S) = 'BUTTON' then begin

If Visi then ShowWindow(Child, 1)

else ShowWindow(Child, 0);

end;

End;

Child := GetWindow(Child, GW_HWNDNEXT);

 End;

End;

//убрать/показать TaskBar

procedure TaskBar(visi:boolean);

begin

 if visi then ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_SHOW) //
Показать Taskbar

 else ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_HIDE); //Скрыть TaskBar

end;

procedure applicationInCtrlAltDelList(visi:boolean);

begin

 if visi then begin

//Show

RegisterServiceProcess(GetCurrentProcessID, 0);

 end else begin

//Hide

RegisterServiceProcess(GetCurrentProcessID, 1);

 end;

end;

procedure applicationInTaskBar(visi:boolean);

begin

 if visi then windows.ShowWindow(FindWindow(nil, @Application.Title[1]), SW_SHOW)

 else windows.ShowWindow(FindWindow(nil, @Application.Title[1]), SW_HIDE);

end;

procedure RussianKbdLayout;//На русский

var Layout: array[0..KL_NAMELENGTH] of char;

begin

 LoadKeyboardLayout(StrCopy(Layout, '00000419'), KLF_ACTIVATE);

end;

procedure EnglishKbdLayout;//На английский

var Layout: array[0..KL_NAMELENGTH] of char;

begin

 LoadKeyboardLayout(StrCopy(Layout, '00000409'), KLF_ACTIVATE);

end;

procedure UkrainianKbdLayout;//На украинский

var Layout: array[0..KL_NAMELENGTH] of char;

begin

 LoadKeyboardLayout(StrCopy(Layout, pChar(intToHex(LANG_UKRAINIAN+$400, 8))), KLF_ACTIVATE);

end;

//запустить
текущий ScreenSaver

procedure RunCurrentScreenSaver;

begin

 SendMessage(Application.Handle, WM_SYSCOMMAND, SC_SCREENSAVE, 0);

end;

//очистить меню "Документы"

procedure clearDocuments;

begin

 SHAddToRecentDocs(SHARD_PATH, nil);

end;

//добавить документ в меню 'Документы'

// Для данного файла должно быть зарегистрировано средство просмотра

procedure addFileToDocuments(const fileName:string);

begin

 SHAddToRecentDocs(SHARD_PATH, pchar(fileName));

end;

//Значение функции TRUE если мелкий шрифт

function SmallFonts:Boolean;

var DC:HDC;

begin

 DC:=GetDC(0);

 Result:=(GetDeviceCaps(DC, LOGPIXELSX) = 96);

 { В случае крупного шрифта будет 120}

 ReleaseDC(0, DC);

end;

function DriveExists(Drive : Byte) : Boolean;

begin

 Result := Boolean(GetLogicalDrives AND (1 SHL Drive))

end;

//'?';'Path does not exists';'Removable';'Fixed';'Remote';'CD-ROM';'RAMDISK'

function CheckDriveType(Drive : Byte) : String;

var

 DriveLetter : Char;

 DriveType : UInt;

begin

 DriveLetter := Char(Drive + $41);

 DriveType := GetDriveType(PChar(DriveLetter + ':\'));

 Case DriveType of

 0 : Result := '?';

 1 : Result := 'Path does not exists';

 DRIVE_REMOVABLE : Result := 'Removable';

Поделиться с друзьями: