Перейти к содержанию
Fire Monkey от А до Я

Лидеры

Популярный контент

Показан контент с высокой репутацией 17.10.2025 во всех областях

  1. Хендлер делается несложно, создаешь его и вешаешь свой обработчик сообщений type TMyForm = class(TForm) private {$IFDEF MSWINDOWS} // Сохраненный обработчик сообщений окна FPrevWndProc: TFNWndProc; // Установленный обработчик сообщений окна FWndProc: Pointer; // Обработчик сообщений окна procedure FormWndProc(var AMsg: Winapi.Messages.TMessage); {$ENDIF} protected {$IFDEF MSWINDOWS} procedure CreateHandle; override; {$ENDIF} end; {$IFDEF MSWINDOWS} procedure TMyForm.FormWndProc(var AMsg: Winapi.Messages.TMessage); begin case AMsg.Msg of WM_SETTINGCHANGE: begin // смотрим наличие ImmersiveColorSet в сообщении и включаем нужную тему из нужного StyleBook на форме end; end; AMsg.Result := CallWindowProc(FPrevWndProc, FormToHWND(Self), AMsg.Msg, AMsg.WParam, AMsg.LParam); end; procedure TMyForm.CreateHandle; begin inherited; var LHandle: HWND := FormToHWND(Self); FPrevWndProc := TFNWndProc(GetWindowLong(LHandle, GWL_WNDPROC)); FWndProc := MakeObjectInstance(FormWndProc); SetWindowLong(LHandle, GWL_WNDPROC, NativeInt(FWndProc)); end; {$ENDIF}
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...