Q&A

  • 이미지를 축소한후 Center모드와 Tile 모드를 표시..?
염치불문하고 또다시 질문을 올립니다.

최용일님께서 어제 올려주신 답변을 바탕으로 혼자서 해결해볼려고 노력해보았지만

역시 실력이 실력이라 도저히 안됩니다.



아래의 축소시킨 이미지를 Tile모드와 Center모드로 판넬위에 디스플레이하고

싶습니다.

예제가 있다면 올려주시면 감사하겠습니다.



TPaintBox를 사용해서 하니까 이미지가 원래사이즈로 표시가 됩니다.

그래서 TImage를 사용했는데 암만 생각해도 PaintBox를 사용하는게 맞을것 같은데..



고수님들의 고견을 기다립니다.







var

R:TRect;

Source: TBitmap; // 원본 이미지

Dest: TBitmap; // 확대or축소된 이미지

begin

if Pic.Bitmap.Width = 0 then Exit;

Source:=Pic.Bitmap;



Dest:=TBitmap.Create;

Dest.Width := Panel7.Width;

Dest.height := Panel7.Height;



SetMapMode(Dest.Canvas.Handle, MM_ISOTROPIC);

SetWindowExtEx(Dest.Canvas.Handle, Source.Width, Source.Height, nil);

SetViewportExtEx(Dest.Canvas.Handle, Dest.Width, Dest.height, nil);



Dest.Canvas.Draw(0, 0, Source);

Image1.Picture.Bitmap.Assign(Dest);

Dest.Destroy;

0  COMMENTS
    • hee
    • 2000.03.21 00:00
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 문영철
      2000.03.21 00:51
      decode (A,B,C,D) ====> IF A = B THEN C ELSE D END-IF. 이정도면 아시겠지...
    • 문영철
      2000.03.21 00:54
      안녕하세요~ STRINGGRID DRAW CELL 이벤트에 다음과 같이 기술하세요. if gdSelected in state then ...
    • 황영철
      2000.03.21 01:24
      문영철 wrote: > 안녕하세요~ > STRINGGRID DRAW CELL 이벤트에 다음과 같이 기술하세요. > if gdSe...
    • 문영철
      2000.03.21 02:00
      string grid 가 draw cell 이벤트가 발생할때 처리해주는 루틴입니다. 보시면 대강 아실거에요.. proc...
    • 문영철
      2000.03.21 01:32
      goRowselect 를 true 로 하셨나요? string grid inspector option 에 있습니다. 황영철 wrote: > 문영...
    • 조피디
      2000.03.20 23:24
      이수정 wrote: > StringGrid 에 출력되는 내용을 가운데 정렬로 하고 싶은데.. > > 어떻게 하는거예요?...
    • 이상학
      2000.03.20 23:33
      Draw cell 에서 코딩을 하면....데이터들을 모두 덮어쓰는 건지...하나도 출력이 않되던데요???
    • blueSky
      2000.03.20 23:35
      유솔로몬 wrote: > 허일학님 홈페이지 접속이 안된당...??? 하나넷에서 써버이전을 하는 관계로 당분간...
    • 최용일
      2000.03.21 01:14
      죄송합니다. 제가 바쁜 관계로 도움을 드리지 못해서... 참고로 전 여기 운영자가 아님니다. 초보 중 ...
    • 최은정
    • 2000.03.20 22:52
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.21 00:49
      Space에 적당한 값을 넣어서 다음과 같이 메세지를 보내보세요... SendMessage(Edit1.Handle, EM_SETM...
    • 정윤호
      2000.03.21 00:21
      질문맨 wrote: > 파일실행할때 파라미터는 넘겨받아서 다르게 실행되게 하고 싶거든요. > 예를들어 > pr...
    • 이빈
    • 2000.03.20 22:41
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.20 22:53
      버튼의 프레임 크기를 계산해 주지 않았군요. 버튼의 크기와 높이를 이미지의 크기보다 4더 크게 잡아주세...
    • 이빈
      2000.03.20 23:29
      최용일 wrote: > 버튼의 프레임 크기를 계산해 주지 않았군요. > 버튼의 크기와 높이를 이미지의 크기보...
    • 최용일
      2000.03.21 00:12
      저의 말을 잘못이해하셨네요... 버튼의 가장자리를 보시면 양각으로 처리된 부분이 있습니다. 그것을 ...
    • 이빈
      2000.03.21 01:06
      친절한 답변 감사합니다. 그럼 즐거운 하루 되세요...
    • 최용일
      2000.03.21 00:55
      뭐 별다른 것은 없습니다. 핫키를 제거하면 됩니다. FormClose부분에 핫키를 제거하는 부분이 있습니다. ...
    • 배불뚝
      2000.03.20 22:27
      김진호 wrote: > RadioGroup에서 Default로 한 항목을 선택해서 보여주려고 하는데 어떻게 해야 하나요? ...
    • 조규춘
      2000.03.20 21:35
      김진호 wrote: > RadioGroup에서 Default로 한 항목을 선택해서 보여주려고 하는데 어떻게 해야 하나요? ...
    • 최은정
    • 2000.03.20 20:59
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.20 21:43
      디자인타임시 컨트롤위에서 마우스 오른쪽 클릭하시면 팝업메뉴가 뜨는데 거기에서 "Align..."메뉴를 선택...
    • 임형호
      2000.03.20 22:16
      최용일 wrote: > 디자인타임시 컨트롤위에서 마우스 오른쪽 클릭하시면 팝업메뉴가 뜨는데 > 거기에서 "A...
    • pungky
    • 2000.03.20 20:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.20 21:39
      콤보박스의 아이템이 바뀔때마다 OnChange이벤트가 발생합니다. 여기에서 폼의 색을 바꾸어 주시면 되죠...
    • 황영철
    • 2000.03.20 20:34
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.20 20:46
      다음과 같이 하시면 될 것 같은데요... var I: Integer; begin for I := 0 to StringGrid1.RowCoun...
    • 강민주
      2000.03.20 20:43
      황영철 wrote: > StringGrid에서 내용을 다 지우는 방법이 없나요 > 아무리 찾아봐도 없네요 > 알고 계...
    • 젠키
      2000.03.20 20:40
      황영철 wrote: > StringGrid에서 내용을 다 지우는 방법이 없나요 > 아무리 찾아봐도 없네요 > 알고 계...
    • 이빈
    • 2000.03.20 19:58
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.20 20:14
      TBitBtn의 Spacing과 Margin속성을 바꾸어 보세요.. 아마도 TBitBtn.Margin을 0으로 놓고 하시면 될것 같...
    • 이빈
      2000.03.20 20:30
      최용일 wrote: > TBitBtn의 Spacing과 Margin속성을 바꾸어 보세요.. > 아마도 TBitBtn.Margin을 0으로 ...
    • 최용일
      2000.03.20 20:37
      이미지와 버튼의 크기가 다르다면 이미지의 크기를 버튼의 크기에 맞추시던가 버튼의 크기를 이미지의 크...
    • 초보..
    • 2000.03.20 19:52
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 염선희
      2000.03.20 20:16
      쿼리(Query1)를 SELECT 이름,주민등록번호,주소 FROM 인사테이블 ORDER BY 이름 이런 방식으로 한...
    • 김영희
    • 2000.03.20 19:38
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 강인규
      2000.03.20 20:38
      김영대님의 홈에 가시면 원하시는 내용을 찾을 수 있을 듯 합니다. 엑셀의 내용을 dbGrid로 보내는 컴퍼넌...
    • 김영희
      2000.03.23 00:19
      강인규님 답변에 감사드립니다. 그런데 김영대님의 홈페이지에 있는 자료는 전부(?) 엑셀화일로 출력하...