bsNone i animacja minimalizacji/zamykania okna

0

Witam,

Chciałbym, aby okno po kliknięciu przycisku (Application.Minimize;) zsuwało się do taskbara, jak ma to miejsce przy niemal wszystkich aplikacjach w Windows Vista/7/8/8.1. Animacja jest obecna, gdy okno posiada BorderStyle:=bsSingle, jednak chciałbym usunąć ramkę Windowsa. W tym celu ustawiam BorderStyle:=bsNone, jednak problemem jest brak animacji minimalizacji/zamykania okna.

Mam nadzieje, że ktoś byłby w stanie mi pomóc.

Pozdrawiam,
Tomoya

0

A reagowanie na komunikat WM-SYSCOMMAND i AnimateWindow się tutaj nie sprawdziło?

0

Nie jestem pewien, czy poprzez AnimateWindow otrzymam oczekiwany efekt, jakim jest chowanie się okna do taskbara (standardowa animacja Aero w nowszych Windowsach). Mogę się jednak mylić.

0

A co stoi na przeszkodzie żebyś to po prostu sprawdził? Ja teraz nie siedzę na PC. Chociaż może lepsze tutaj będzie ShowWindow. Ewentualnie nic się nie da zrobić, gdyż tak zaprojektowany system.

0

ShowWindow daje taki sam wynik - okno po prostu znika.

0

jednak chciałbym usunąć ramkę Windowsa

Prawidłowo ramka powinna być, ale zamiast standardowej trzeba obsłużyć komunikaty WM_NCHITEST i WM_NCPAINT, co pozwala na zachowanie ramki w sensie logicznym, ale własne jej rysowanie (choćby jako niewidzialnej).
Ale trudno jest te komunikaty obsłużyć prawidłowo.

1 użytkowników online, w tym zalogowanych: 0, gości: 1