|
|
Tetszőleges ablak állapotának lekérdezése és beállítása
|
|
Példaprogram letöltése
3969 bájt
|
A Delphi-ben lehetőségünk van arra, hogy nem csak saját ablakaink, hanem bármilyen más program ablakának állapotát és az azokhoz tartozó információkat lekérdezhessük, vagy beállíthassuk. Megtudhatjuk az ablak jelenlegi állapotát, minimalizált vagy maximalizált állapotának koordinátáit, stb. Ezen információk eléréséhez és beállításához API függvények állnak rendelkezésünkre.
Egy tetszőleges ablak állapotáról a GetWindowPlacement függvény segítségével kérdezhetünk le információkat.

GetWindowPlacement
function GetWindowPlacement(
hWnd: HWND;
WindowPlacement: PWindowPlacement
): BOOL;
Egy megadott ablak állapotának és koordinátáinak lekérdezésre szolgál.
Paraméterek
hWnd: HWND
Az ablak azonosítója.
WindowPlacement: PWindowPlacement
Mutató egy WINDOWPLACEMENT struktúrára, amelybe a lekérdezés eredménye kerül. Mielőtt meghívnánk a függvényt a struktúra length tagjának értékét be kell állítanunk SizeOf(WINDOWPLACEMENT)-re.
Visszatérési érték
Ha a függvény futása sikeres volt, akkor a visszatérési érték igaz, ellenkező esetben hamis.
Egy ablak állapotát, természetesen nem csak lekérdezhetjük, hanem módosíthatjuk is. Erre szolgál a SetWindowPlacement függvény.

SetWindowPlacement
function SetWindowPlacement(
hWnd: HWND;
WindowPlacement: PWindowPlacement
): BOOL;
Egy megadott ablak állapotának és koordinátáinak beállítására szolgál.
Paraméterek
hWnd: HWND
Az ablak azonosítója.
WindowPlacement: PWindowPlacement
Mutató egy WINDOWPLACEMENT struktúrára, amelybe a lekérdezés eredménye kerül. Mielőtt meghívnánk a függvényt, a struktúra length tagjának értékét be kell állítanunk SizeOf(WINDOWPLACEMENT)-re.
Visszatérési érték
Ha a függvény lefutása sikeres volt, akkor a visszatérési érték igaz, ellenkező esetben hamis.
A WINDOWPLACEMENT struktúra
- length: UINT: A struktúra mérete bájtokban. Mielőtt meghívnánk a fenti függvények bármelyikét, ennek a tagnak az értékét be kell állítanunk SizeOf(WINDOWPLACEMENT)-re.
- flags: UINT: Flag-ek, amelyek a minimalizált ablak állapotát, valamint visszaállítását vezérlik. Értéke az alábbiak kombinációja lehet.
| Érték |
Jelentése |
| WPF_RESTORETOMAXIMIZED |
Csak akkor van jelentősége, ha a SW_SHOWMINIMIZED flag-et használjuk a showCmd tagban. Azt határozza meg, hogy az ablak maximalizált állapotban kerüljön visszaállításra, függetlenül attól, hogy az ablak korábban volt-e maximalizálva. |
| WPF_SETMINPOSITION |
Ezt a flag-et akkor kell használnunk, ha a minimalizált ablak koordinátáit a ptMinPosition tagban beállítottuk. |
- showCmd: UINT: Az ablak aktuális állapotát határozza meg. Értéke az alábbiak egyike lehet.
| Érték |
Jelentése |
| SW_HIDE |
Elrejti az ablakot, majd aktivál egy másikat. |
| SW_MAXIMIZE |
Maximalizálja az ablakot. |
| SW_MINIMIZE |
Minimalizálja az ablakot, majd aktiválja a Z index szerinti, soron következő ablakot. |
| SW_RESTORE |
Aktiválja és megjeleníti az ablakot. Ha az ablak minimalizálva vagy maximalizálva van, akkor az operációs rendszer visszaállítja azt eredeti állapotába (restore). Visszaállítás esetén ezt a flag-et kell használnunk. |
| SW_SHOW |
Aktiválja az ablakot, majd megjeleníti. |
| SW_SHOWMAXIMIZED |
Aktiválja az ablakot, majd maximalizált állapotában megjeleníti azt. |
| SW_SHOWMINIMIZED |
Aktiválja az ablakot, majd minimalizált állapotában megjeleníti azt. |
| SW_SHOWMINNOACTIVE |
Ugyanaz, mint az SW_SHOWMINIMIZED, de az ablak nem kerül aktiválásra. |
| SW_SHOWNA |
Ugyanaz, mint az SW_SHOW, de az ablak nem kerül aktiválásra. |
| SW_SHOWNOACTIVATE |
Ugyanaz, mint az SW_SHOWNORMAL, de az ablak nem kerül aktiválásra. |
| SW_SHOWNORMAL |
Aktiválja és megjeleníti az ablakot. Ha az ablak minimalizálva vagy maximalizálva van, akkor az operációs rendszer visszaállítja azt eredeti állapotába (restore). |
- ptMinPosition: TPoint: Az ablak bal felső sarkának koordinátái, amikor az ablak minimalizált állapotban van.
- ptMaxPosition: TPoint: Az ablak bal felső sarkának koordinátái, amikor az ablak maximalizált állapotban van.
- rcNormalPosition: TRect: Az ablak koordinátái, amikor az visszaállított állapotban van.
|
Cikksorozat
| 2591 | Windows | Tippek és trükkök - RAS - Modem csengetési szám állítása | 1. rész |
| 2622 | Windows | Tippek és trükkök - Program futtatása más felhasználóként | 2. rész |
| 2640 | Windows | A Windows ikonméretének megváltoztatása és Windows 2000 Asztaltémák | 3. rész |
| 2657 | Windows | Tippek és trükkök - Internet Explorer | 4. rész |
| 2667 | Windows | Tippek és trükkök | 5. rész |
| 2684 | Windows | Alapértelmezések állítása, telepítési fájlok helye, intéző nézetek | 6. rész |
| 2696 | Windows | Biztonsági trükkök | 7. rész |
| 2702 | Windows | Windows XP trükkök | 8. rész |
| 2729 | Windows | Windows 2000 és XP tippek, trükkök | 9. rész |
| 2757 | Windows | Registry trükkök | 10. rész |
| 2784 | Windows | Tippek, trükkök | 11. rész |
| 2829 | Windows | Tippek, trükkök | 12. rész |
| 2889 | Windows | Windows XP tippek | 13. rész |
| 2909 | Windows | Tippek Windows XP-hez | 14. rész |
| 2919 | Windows | Windows tippek | 15. rész |
| 2924 | Windows | Windows tippek | 16. rész |
| 2963 | Windows | Windows tippek | 17. rész |
| 2973 | Windows | Windows Tippek | 18. rész |
| 2981 | Windows | Windows tippek | 19. rész |
| 2990 | Windows | Tippek-trükkök | 20. rész |
| 3027 | Windows | IIS tippek | 21. rész |
| 3034 | Windows | Windows XP tippek-trükkök | 22. rész |
| 3088 | Windows | Windows 2000/XP tippek, trükkök | 23. rész |
| 3133 | Windows | Windows XP tippcsokor | 24. rész |
| 3140 | Windows | Windows XP tippek, trükkök | 25. rész |
| 3152 | Windows | XP és IIS tippek - trükkök | 26. rész |
| 3158 | Windows | Windows XP tippek, trükkök | 27. rész |
| 3168 | Windows | Tippek, trükkök | 28. rész |
| 3170 | Windows | Registry trükkök | 29. rész |
| 3179 | Windows | Tippek, trükkök | 30. rész |
| 3197 | Windows | Windows XP tippek, trükkök | 31. rész |
| 3205 | Windows | Tippek, trükkök | 32. rész |
| 3214 | Windows | Tippek, trükkök | 33. rész |
| 3223 | Windows | Tippek, trükkök | 34. rész |
| 3233 | Windows | Tippek, trükkök | 35. rész |
| 3271 | Windows | Tippek, trükkök | 36. rész |
| 3307 | Windows | Tippek, trükkök | 37. rész |
| 3370 | Windows | Tippek, trükkök | 38. rész |
| 3399 | Windows | Tippek, trükkök | 39. rész |
| 3510 | Windows | Tippek, trükkök | 40. rész |
| 3611 | Windows | Hardverrel kapcsolatos tippek, trükkök | 41. rész |
| 3668 | Windows | Registry trükkök | 42. rész |
| 3711 | Windows | Tippek, trükkök | 43. rész |
| 3771 | Windows | Tippek, trükkök | 44. rész |
| 3801 | Windows | Tippek, trükkök | 45. rész |
| 3831 | Windows | Tippek, trükkök | 46. rész |
| 3891 | Windows | Tippek, trükkök | 47. rész |
| 3921 | Windows | Tippek, trükkök | 48. rész |
| 3981 | Windows | Tippek, trükkök | 49. rész |
| 4041 | Windows | Tippek, trükkök | 50. rész |
| 4071 | Windows | Tippek, trükkök | 51. rész |
| 4151 | Windows | Tippek, trükkök | 52. rész |
| 4171 | C# | Tippek, trükkök | 53. rész |
| 4211 | Windows | Tippek, trükkök | 54. rész |
| 4251 | Windows | Tippek, trükkök | 55. rész |
| 4281 | Windows | Tippek, trükkök | 56. rész |
| 3589 | Delphi | Tippek, trükkök | 57. rész |
| 3718 | Delphi | Tippek, trükkök | 58. rész |
Könyv
Ez a cikk megtalálható ebben a könyvben:
Delphi Software Offline 2003 évkönyv 366. oldal
Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!
|