There are two ways to determine the screen’s height and width.
1) Use the global Screen variable.
uses
Forms;
...
Screen.Height { Screen height in pixels }
Screen.Width { Screen width in pixels }
...
2) Use the Windows API GetSystemMetrics() function. This function can be useful in applications that don’t use the VCL like console applications.
uses
Windows;
...
GetSystemMetric(SM_CXSCREEN) { Screen height in pixels }
GetSystemMetric(SM_CYSCREEN) { Screen width in pixels }
...
Delphi uses TColor to represent colors but HTML requires a string name (139 colors have names in the web palette) or a hex number. Here’s the code to convert a TColor color value to hex a string and vise versa.
The functions use the Windows API GetRValue(), GetBValue(), GetGValue() and RGB() functions.
!Note: If your are going to use this in a unit that has a form remember that the colColor and sColor parameters must have different names than Color else the function will take the form’s color.
(* Returns a string representation of the colColor parameter in XXXXXX format,
** X being a hex digit.
*)
function TColorToHex(const colColor: TColor): string;
begin
Result := IntToHex(GetRValue(colColor), 2) + { Red value }
IntToHex(GetGValue(colColor), 2) + { Green value }
IntToHex(GetBValue(colColor), 2); { Blue value }
end;
{ sColor should be in XXXXXX format, X being a hex digit }
function HexToTColor(const sColor: string): string;
begin
Result := RGB(StrToInt('$' + Copy(sColor, 1, 2)), { Get red value }
StrToInt('$' + Copy(sColor, 3, 2), { Get green value }
StrToInt('$' + Copy(sColor, 5, 2)); { Get blue value }
end;