Dwie formy na ekranie i automatyczne dopasowywanie

0

Witam Was, potrzebuję pomoc w nakierowaniu jak podejść do sprawy.

Uruchamiam program i np Form1 mam na całym ekranie. Teraz po przez jakiś button tworzę dynamicznie form2 które jest małym wąskim okienkiem i zawsze na wierzchu, nie blokując przy tym form1. Jak sprawić aby po przesunięciu form2 np do prawej krawędzi form1 zmniejszył się o szerokość form2 a form2 przykleił się do form1 ?

Temat przyklejania mam opanowany choćby z tego posta: Przyklejanie okna

0
  1. Nie umiesz zmniejszyć szerokość Form1 o szerokość Form2?
  2. Może lepiej użyć dokowania?
0

Nie wiem do czego chcesz to wykorzystać (stawiam że jakieś narzędzie), ale może zainteresuje Cię taki pomysł że możesz zrobić formę w formie (np tak: http://www.softcircuits.com/cygnus/fe/cygnus.jpg). I wtedy możesz swobodnie poruszać formą1, a formą 2 tylko w obrębie formy1. Oczywiście jak ruszasz formą1 to forma2 razem z nią.

0

Zależy co dokładnie chcesz uzyskać. Jak rozumiem masz form1 na całym ekranie. Po przesunięciu form 2 chcesz zwęzić form1 tak aby form2 się dokleił do prawej strony form1? Efekt podobny jak w np winampie? Jeżeli chcesz kombinować z windowsstate to raczej tylko pozostaje ustawianie max i min width we właściwości constraint formy. Jeżeli nie to po przeciągnięciu (może to być zdarzenie w timerze lub ręcznie jakiś event on move) zmniejszysz width form1 i dokleisz form2. Nie mam w tej chwili delphi pod ręką ale jak utkniesz na czymś lub opisałem coś niezbyt precyzyjnie (a w tym stanie to możliwe) to wrzuć tu swój kod i jutro na spróbuję Ci coś więcej podpowiedzieć.

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