if (w Delphi) zrobićnie ManualFloat użyciu określonego Rect
Panel1.ManualFloat(Rect(500,500,600,600));
panel jest nie unosił się w określonej lokalizacji Rect, ale zamiast w rodzaju okna domyślnej lokalizacji. Jak uzyskać panel (lub inny element sterujący) do unoszenia się w określonej lokalizacji. Wygląda jednak na to, że ma prawidłowy kształt. Czy jest jakaś inna właściwość, którą muszę ustawić, aby działała poprawnie?
Edytuj: Tylko po to, aby wszystko było jasne. Spodziewam się, że powyższy kod sprawi, że panel będzie miał kwadrat 100 x 100 położony w (500 x 500) względem lewego górnego rogu ekranu, którego nie ma. Kształt jest poprawny, ale lokalizacja nie jest. Jeśli kolejne elementy sterujące zostaną uniesione, zostaną sprowadzone kaskadowo w dół ekranu.
Edit2: To nie wydaje się być problemem w Delphi 7, ale jest w Delphi 2007 przez XE2 (i ewentualnie wcześniej)
Przy zastosowaniu 'ManualFloat'' Rect (500, 500, 600, 600) jest '500 pikseli w dół i w lewo od górnej części ekranu , zawsze. (Zasadniczo jest to obszar typu "domyślna lokalizacja okna", ponieważ 'ManualFloat' używa współrzędnych ekranu, a nie współrzędnych okna). Czy spodziewasz się, że będzie on współrzędnych klienta zamiast (w oparciu o lokalizację twojego formularza)? –
@KenWhite, dziękuję Kenowi, ale nie dzieje się tak.Panel jest kwadratem 100x100, jak można się było spodziewać, ale nie w miejscu (500 500) w stosunku do lewego górnego rogu ekranu – Alister
@KenWhite, spróbuj jego kodu i przekonaj się sam ... –