скрыть

скрыть

  Форум  

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

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



Google  
 

Обнаружить, использует ли пользователь стиль XP или классический стиль



Оформил: DeeCo

function _IsThemeActive: Boolean;
 // Returns True if the user uses XP style 
const
   themelib = 'uxtheme.dll';
 type
   TIsThemeActive = function: BOOL; stdcall;
 var
   IsThemeActive: TIsThemeActive;
   huxtheme: HINST;
 begin
   Result := False;
   // Check if XP or later Version 
  if (Win32Platform  = VER_PLATFORM_WIN32_NT) and
      (((Win32MajorVersion = 5) and (Win32MinorVersion >= 1)) or
       (Win32MajorVersion > 5)) then
   begin
     huxtheme := LoadLibrary(themelib);
     if huxtheme <> 0 then
     begin
       try
         IsThemeActive := GetProcAddress(huxtheme, 'IsThemeActive');
         Result := IsThemeActive;
       finally
        if huxtheme > 0 then
           FreeLibrary(huxtheme);
       end;
     end;
   end;
 end;

 // Example Call: 

procedure TForm1.Button1Click(Sender: TObject);
 begin
  if _IsThemeActive then
    ShowMessage('Windows Themes are active.');
 end;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook