Hogyan készítsük el a formát a képernyő széleihez
Van egy Windows API funkció, amely lehetővé teszi, hogy az ablakokat a képernyő széléhez kösse. Itt használják a Windows üzeneteket. Delphi teszi üzenetek kezelése egyszerű használata révén az események, amelyek tipikusan válaszként Windows üzenetet, miután elküldi a kérelmet.
Bár a Delphi számos Windows-üzenetet kezel, néhányat módosítani kell. Például megtudjuk, hogy az űrlap megváltoztatja-e a méretét (az OnResize esemény használatával és a WM_SIZE üzenet feldolgozásával). De honnan tudjuk, hogy az űrlapot áthelyezték? Delphi megkaphatja az üzenetet, de kezdetben semmi sem történik vele.
A WM_MOVING üzenet az ablakba kerül, amikor a felhasználó áthelyezi azt. Az üzenet feldolgozásával az alkalmazás figyelemmel kísérheti az áthelyezni kívánt ablak méretét és helyzetét, és szükség esetén megváltoztathatja annak méretét vagy pozícióját.
WM_WINDOWPOSCHANGING küldött üzenet az ablak, ha változik a mérete, helyzete, vagy Z-rend egy hívás SetWindowPos funkciót vagy egy ablak vezérlő funkció.
Egy egyszerű üzenet nem elég nekünk, tudnunk kell más paramétereket. Például a WM_MOVE üzenet azt mondja, hogy az űrlap pozíciója megváltozott, de rendelkezik az LPARAM paraméterrel is. amely megadja nekünk az X és az Y pozíciót.
A WM_WINDOWPOSCHANGING üzenetnek csak egy paramétere van, amely a WINDOWPOS struktúrára mutat. amely az ablak méretére és pozíciójára vonatkozó információkat tartalmazza. A WINDOWPOS szerkezete a következő:
Esetünkben az alakot egy bizonyos távolságban, például a széltől 20 képpontig ragasszuk a képernyő széléhez.
Üzenet WM_WINDOWPOSCHANGING
A képernyő bármelyik széléhez tapadás megszüntetése egyszerű, csak törölni kell egy olyan kódot, amely felelős a webhelyért.
SystemParametesInfo megadta SPI_GETWORKAREA mint az első paraméter és megkapja a méret a munkaterületet a képernyő (asztali). Ezt a felhasználható terület meghatározására használjuk, kivéve a Tálcát, az Eszköztárat stb.
A program kódja:
Most indítsa el a projektet, és mozgassa az ablakot a képernyő határaihoz, hogy megnézze a tapadást.