Az aktuális képernyőfelbontás megállapításához a GetSystemMetrics() Windows API függvényt használhatjuk. Ez a függvény a paramétertől függően a Windows különböző méretbeállításaival illetve egyéb konfiurációs információkkal tér vissza. Jelen esetben az alábbi négy paraméter lehet segítségünkre a feladat megoldásában: SM_CXSCREEN - a teljes képernyő szélességét adja vissza pixelben. SM_CYSCREEN - a teljes képernyő magasságát adja vissza pixelben. SM_CXFULLSCREEN - egy teljes méretű ablak kliens-területének teljes szélessége pixelben. SM_CYFULLSCREEN - egy teljes méretű ablak kliens-területének teljes magasságát adja vissza pixelben. (az SM_CYSCREEN értékből levonva az ablakok fejlécmagassága és a Taskbar magassága) Lássunk egy példát a fenti függvény alkalmazására: Az alábbi eljárás egy gomb lenyomására egy üzenetablakban megjeleníti a képernyőfelbontás aktuális értékeit és egy teljes méretű ablak kliens-területének maximális értékét. procedure TForm1.Button1Click(Sender: TObject); var scrWidth, scrHeight : Integer; mclWidth, mclHeight : Integer; begin scrWidth := GetSystemMetrics(SM_CXSCREEN); scrHeight := GetSystemMetrics(SM_CYSCREEN); mclWidth := GetSystemMetrics(SM_CXFULLSCREEN); mclHeight := GetSystemMetrics(SM_CYFULLSCREEN); ShowMessage('Képernyőfelbontás: ('+IntToStr(scrWidth)+ 'x'+IntToStr(scrHeight)+ ')'+ #13 +'Max. kliensterület: ('+IntToStr(mclWidth)+ 'x'+IntToStr(mclHeight)+ ')'); end;