flat Style 컴포넌트를 사용중에..
항상 나는 건 아니지만 가끔.
아래의 포인트에 중단이 되면서. 범위체크에러가 나는데..
컴파일을 다시 하거나 Build All하면 나지 않습니다.
비정상적인 경우인거 같은데. 이유를 모르겠습니다. 고수님들의 지도를...^^:
procedure DrawParentImage(Control: TControl; Dest: TCanvas);
var
SaveIndex: Integer;
DC: HDC;
Position: TPoint;
begin
Try
with Control do
begin
if Parent = nil then Exit;
DC := Dest.Handle;
SaveIndex := SaveDC(DC);
{$IFDEF DFS_COMPILER_2}
GetViewportOrgEx(DC, @Position);
{$ELSE}
GetViewportOrgEx(DC, Position);
{$ENDIF}
SetViewportOrgEx(DC, Position.X - Left, Position.Y - Top, nil);
IntersectClipRect(DC, 0, 0, Parent.ClientWidth, Parent.ClientHeight);
Parent.Perform(WM_ERASEBKGND, DC, 0); // <<-- 여기에서 중단.
// 위에서 범위가 틀리지 않은거 같은데..
Parent.Perform(WM_PAINT, DC, 0);
RestoreDC(DC, SaveIndex);
end;
except
RestoreDC(DC, SaveIndex);
end;
end;
오늘 갑자기 그러군요
아마 버그인것 같읍니다.
저도 아직 해결하지 못하고 있읍니다.