Q&A

  • TImage의 런타임시 리사이징.
안녕하십니까?

하루동안 혼자 낑낑대면서 해보다가 잘 안되서 질문드립니다.

TImage 컴포넌트의 Canvas에다가 선을 그리는 데요

실행중에 TImage의 사이즈를 변경했습니다.

그런데 이미지의 크기는 변경이 됐는데도 불구하고 그려지는 범위는

변하지 않는군요. 제가 해본 사항은 이렇습니다.

1. 이미지 컴퍼넌트를 폼에 넣고 바탕을 칠합니다.(Image1.canvas.fillrec)

현재 크기는 0, 0, 100, 100 이라고 하고

2. 크기를 변경합니다. 예를 들어서

Image1.Width := 200;

Image1.Height := 200;

또는 이렇게도 해봤습니다.

SetBounds(0, 0, 200, 200);

3. 바탕을 다시 칠하면 변경되지 않은 원래의 크기가 보여집니다.

이미지의 크기를 뽑아보면 분명히 입력한 대로 변경되었는데요

그려질 수 있는 범위는 변경되지 않았다는 거지요

한가지 ClipRec이란 함수로 크기를 보면 100, 100 입니다.

이건 그려지는 부분을 자르겠다는 건데 이걸 어떻게 변경시킬 수 있는지요

이건 읽기전용이라 변경시킬 수도 없더군요

좋은 답변을 부탁드립니다.

0  COMMENTS