Q&A

  • TImage를 다른 TImage 로 복사할 때 중앙에 보내려고 할때 생기는 좌표 문제..
경험해 보신분들은 어떻게 해결하셨나요 ?

질문 내용 다 찾아보았는데 외국 사이트나 링크에도 정확한 정보가 없네요.
TImage 를 다른 TImage 에 복사할 때, 이동될 Timage 의 중앙에 이미지를 놓이게 하려고 Center 옵션을 true 로 주면
이미지가 좌측 상단에서 (1 사분면 ?) 반만 보이다고 한번더 할당해 주면 그때서야 중앙에 오는 문제가 있더군요.

솔직히 별짓 다해봤는데 해답이 없네요.

pImage_Status.Picture.Assign(Image_Available.Picture);
이런 식으로 할당을 할 때

    pImage_Status.Picture.Graphic := nil;
    pImage_Status.Picture := nil;
이런식으로 초기화를 해보기고 하고

할당후에 아래 처럼 재설정을 해보기도 하고 했는데 문제는 여전하네요.
    pImage_Status.Center := true;
    pImage_Status.Align := alClient;

--------------------------------
그리고 TImagelist 를 Timage 에 보여주게 할때는 흰색 배경이 나오는데 투명하게 나와야 하는데 이것도 어떻게 처리하고 계신가요 ?

이자료도 외국 사이트나 링크에서도 사례는 있는데 이렇게 해서 해결했다는 정확한 답이 없네요.

경험을 나누어 주세요....   ㅠ.ㅠ
3  COMMENTS
  • Profile
    최용일 2007.02.15 08:39
    안녕하세요. 최용일입니다.

    첫번째 같은 경우는 한번도 발생한적이 없어서... Assign만 하면 별문제 없이 썼습니다.

    Assign한뒤에 Repaint한번해보세요...

    두번재는 Brush.Color속성을 셋팅해보세요...
    <!--CodeS-->
      Image1.Transparent := True;
      Image1.Picture.Bitmap.Canvas.Brush.Color := clWhite;
      ImageList1.GetBitmap(0,Image1.Picture.Bitmap);
    <!--CodeE-->

    ^^ 항상 즐코하세요...

  • Profile
    이은주 2007.02.15 22:47
    말씀하신대로 하니까 TImageList 에서의 이미지는 정상적으로 들어가고 뒤에 흰색은 없지만 검정색이 약간 보이는 문제가 있긴 하군요.
    어디서 지나다 보니까 그게 XP 에서의 환경탓이라고 하던데 그걸 제거하는 코드도 있던 것 같은데 갑자기 찾으려고 하니 안 보이는군요.
    열심히 찾아보고 올리도록 하겠습니다.

    그리고 TImage 끼리의 복사는 Repaint 로는 해결이 안나는군요.
    정중앙에 보내지 않으면 이상없이 보이는데 중앙으로 보내려고 하면 여전히 좌측 위에서 처음 이미지가 할당되어 뜰때는 짤려 보이는군요.
    제가 상용으로 Devexpress 를 쓰고 있어서 그쪽에 여쭤 보니까 그 문제가 TImage 의 고유한 문제라고 하더군요.
    최용일님께서는 잘 쓰고 계신다고 하니까 왠지 스쳐지나가는 저만의 허탈감이 느껴지는군요.


  • Profile
    이은주 2008.12.10 10:35
    컴포넌트를 dev 로 바꾸었는데 이제는 그런 문제가 없군요.
    최용일님께 다시 한번 감사 말씀 드립니다.
    늘 조언이 제게 큰 힘이 됩니다.
    2008 년 크리스 마스 즐겁게 보내시기 바랍니다.
    메리 크리스 마스 !
    • 이은주
    • 2007.02.14 11:03
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2007.02.15 08:39
      안녕하세요. 최용일입니다. 첫번째 같은 경우는 한번도 발생한적이 없어서... Assign만 하면 별문제 없...
    • 이은주
      2007.02.15 22:47
      말씀하신대로 하니까 TImageList 에서의 이미지는 정상적으로 들어가고 뒤에 흰색은 없지만 검정색이 약간 ...
    • 이은주
      2008.12.10 10:35
      컴포넌트를 dev 로 바꾸었는데 이제는 그런 문제가 없군요. 최용일님께 다시 한번 감사 말씀 드립니다. ...
    • 박준철
    • 2007.02.14 10:19
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이희진
      2007.02.14 22:48
      프로젝트 소스 상에 uses 절에 들어간 순서대로입니다. uses절에서 순서를 정렬하시면 됩니다. ^^ 자...
    • 문혜윤
    • 2007.02.13 18:46
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 착한천사
      2007.02.16 05:56
      착한천사 김경록입니다. 이런것은 SQL-Tunnig에 속하는 것으로 님께서 작성하신 중복 Query문은 1개의 SQ...
    • 최용일
      2007.02.15 02:15
      안녕하세요. 최용일입니다. ORAQuery1의 데이터 한건당 4번의 쿼리를 다시 날리는구조군요. 데이터가 많...
    • 궁금이
    • 2007.02.13 08:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 착한천사
      2007.02.16 06:03
      어려운거네요.. 이런거는 흔히 무협지 볼때 많이 봤던건데.. T.T 경험상으론.. 한글 조합형을 완성형...
    • 박성준
      2007.02.13 09:49
      TEmbeddedWB를 사용했을때 Download Option에 이미지를 다운로드 하지 않는 프로퍼티가 있습니다. 이...
    • 이윤희
      2007.02.13 17:56
    • 진석
    • 2007.02.13 03:10
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2007.02.13 12:34
      안녕하세요. 최용일입니다. in구문은 Project나 Library소스파일에서만 쓸 수 있습니다. 프로젝트별...
    • 이희진
      2007.02.13 17:57
      ShellExcute를 사용하는 건 좋은 해결책이 아닌 것 같습니다. printer.Canvas.Draw(0,0,Image1.Picture....
    • 윤지현
      2007.02.13 18:49
      답변 감사합니다. 제가 쓰는 이미지 확장명이 bmp 가 아니라 jpg라서 그런 것 같습니다. 용량이 확 ...
    • 이희진
      2007.02.14 22:51
      간단하게 구현해봤으니 참고해보세요.
    • 윤지현
      2007.02.15 00:22
      친절하게 소스까지.. 정말 감사합니다. ^^* 주신  샘플코드로 실행해봤는데, 여전히 출력할 ...
    • 이희진
      2007.02.15 01:57
      프린터 드라이버 설정 문제로 보입니다. 최신 드라이버인지, 프린터 설정은 어떻게 되어 있는지 확인해보...
    • 이희진
      2007.02.12 21:26
      네, 별도의 처리를 해주어야 합니다. 윈도우 작업표시줄에 뜨는 건, 어플리케이션의 시스템 메뉴이고, ...
    • 박성준
      2007.02.12 23:53
      처음에 사실 질문이 이해가 되질 않았습니다. ^^;; 그런데, 답변을 보고 검색을 나름대로 해보니 이해했...
    • 이은주
      2007.02.13 08:57
      몇년 넘게 델파이를 쓰면서 이걸 모르고 계속 의문만 가지고 있었네요. 다른 분들도 모르시는 분들이 계실...
    • 박성준
      2007.02.13 09:51
      좀더 몇자 적어보면 저는 개인적으로 델파이사이트를 참고할때 국내 널리알려진 몇군데만 접속하거든요? ...
    • 박동호
    • 2007.02.10 16:54
    • 2 COMMENTS
    • /
    • 0 LIKES
    • Marek
      2007.02.10 21:37
      안녕하세요. 6.5와 2000의 특성보다는 키값의 중복때문입니다. 거래처의 테이블구조를 살펴보시고 키중복...
    • 박동호
      2007.02.15 17:26
      고맙습니다.
    • HEIM(델파리)
      2007.02.15 23:48
      결국 자답을 하게되었네요. 이 문제로 고민하시는 분이 꽤 있으셨더군요. 델파이 용 라이브러리 두개...
    • 모영철
      2007.02.10 02:47
      FreeAndNil(pTimer);
    • 이은주
      2007.02.10 15:20
      감사합니다. 그런데 이게 할당이 밴수에 인스턴스가 생성안된 경우에도 문제가 없는건지 모르겠군요. ass...
    • 모영철
      2007.02.12 20:02
    • 이은주
      2007.02.13 08:47
      ..!
    • Marek
      2007.02.10 21:55
      안녕하세요 델파이 팁&테크에서 GetCurrentUserAndDomain으로 검색하시면 최용일님께서 올린 팁을 찾으실...
    • 낙화
    • 2007.02.09 17:51
    • 0 COMMENTS
    • /
    • 0 LIKES
    • sulonge
    • 2007.02.08 22:16
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 착한천사
      2007.02.11 00:51
      음.. "저도 CTRL+마우스 클릭" 이 좋다고 생각합니다. 저는 델4는 기억이 잘 안나고, 델5,6에서는 되었던...
    • 박성준
      2007.02.11 01:22
      View Explorer에 대한 답변을 제가 달긴했어도... 저또한 CTRL+마우스 클릭이 좋다고 생각합니다... 저...
    • 깔쌈보이
      2007.02.09 20:40
      CTRL 키를 누른채로 해당 함수를 마우스로 클릭해보십시오. 델파이 버젼을 얼마를 가지고 계신지 모르겠지...
    • 박성준
      2007.02.08 23:10
      저도 왕초보지만 제가 아는 내용이라 답변 적어봅니다. 제가 사용하는 Delphi 7 Version에선 Shift + C...
    • 델파인
    • 2007.02.08 18:55
    • 2 COMMENTS
    • /
    • 0 LIKES
    • NeoSky
      2007.02.10 19:57
      이렇게 하니깐.. 되네요.  EmbededWB Event에 있습니다. procedure TForm1.EWB1NewWindow2(Se...
    • 박성준
      2007.02.08 20:32
      http://www.delmadang.com/cwb-bin/CrazyWWWBoard.exe?db=dmdqa&mode=read&num=128531&page=1&backdepth=1 ...
    • 이종운
    • 2007.02.08 07:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2007.02.08 21:46
      안녕하세요. 최용일입니다. 1번은 델파이 Bin폴더에 dcc32.exe라고 커맨드라인 컴파일러가 있습니다. 도...
    • 민스맘
    • 2007.02.07 02:45
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 행복맨
      2007.02.09 02:33
      음... 지나가다... 폼의 속성중에 showing 이란 속성으론 해결이 안되나여 ?
    • 박성준
      2007.02.09 03:02
      그게 더 간단할수도 있겠는데요?
    • 석주현
      2007.02.07 07:47
      좀 질문이 애매하네요. 일단 Form 을 Show 하면 Visible 이 True 될 것이고 Close 하면 Visible 이...
    • 민스맘
      2007.02.07 18:44
      Form 을 Close 하면서 Free 하거든요...그래도 과연 그게 될까요?
    • 석주현
      2007.02.09 00:27
      Form을 Free 하면서 Form := nil 해주고 나중에 if Form = nil then 으로 하시면 될 것 같네요. ...