-
핵심은 FireMonkeyObject.MakeScreenShot; 입니다.
오브젝트별로 비트맵을 리턴합니다.
예) Layout1 오브젝트와 하위 오브젝트의 스크린샷 비트맵을 가져올 경우 -> bitmap := Layout1.MakeScreenShot;
var
BMP: TBitmap;
begin
BMP := FireMonkeyObject.MakeScreenShot; BMP.SaveToFile('MyScreenShot.png');
BMP.Free;
end;
-
한글을 포함한 2바이트 문자열 길이 구하기는 쉬우면서도 왠지 짜증나죠? ㅋ
Length(‘123문자열’) = 6;
Length(WideString(‘123문자열’)) = 6;
ByteToCharLen(‘123문자열’, Length(‘123문자열’)) = 6;
그래서 탈락…
그래서 AnsiString 으로 변환하여 길이를 구하면…`Length(AnsiString(‘123문자열’)) = 9;
빙고!!!!
그러나 firemonkey로 넘어오면서 AnsiString() 함수는 VCL에서만 작동하고 Android를 포함한 타 플랫폼…
-
델파이 파이어몽키(FireMonkey)에서 조건부 컴파일(Conditional Compilation)이란…
{$IFDEF}뒤의
- 사용 플랫폼 선택시 자동정의되는 ANDROID, IOS, MSWINDOWS, MACOS 등과
- 빌드 환경 선택에 따른 DEBUG, RELEASE 와 같은
심볼명이 정의 되어 있는 블록안에 소스 코드를 컴파일 하여 앱 실행시 동작함.
[ 예 제 ]
{$IFDEF ANDROID}
Path := tpath.Combine(tpath.GetDocumentsPath, ‘woman.jpg’);
{$EN…