C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[9052] Re:[질문] AP I함수 GradientFill 에 대해서
주경민 [amos] 1179 읽음    2001-07-16 15:29
GradientFill() 이나,
기타 알파 블렌딩 관련 API들은
Win98이나 Win2000 이후에 추가된 것들이며,
실행 역시 이것들에 한정되어 실행됩니다.
이런 종류의 API는 델파이나 BCB에 제대로 포함되어 있질 않더군요.

꼭 써야만 하겠다면,
조금 번거로운 과정을 거쳐서 쓸 수는 있습니다.

MSDN이 있다면 좋겠는데...
어쨌든 이것을 뒤져 보면,
GradientFill()이 MSIMG32.DLL에 들어 있다는 것을 알 수 있습니다.
이 파일은 system32나 system 폴더에 들어 있겠죠.
여기 가서,
import 라이브러리를 생성합니다.

  c:\windows\system> implib msimg32.lib msimg32.dll

이렇게 하면 msimg32.lib 파일이 생성됩니다.
이것을 빌더 폴더나, 아니면 개발중인 프로젝트가 있는 곳으로 복사해 넣습니다.
그리고 프로젝트의 Add 를 이용해 이 .lib 파일을 추가하면 됩니다.

이런 식으로,
비표준 API나, 윈도우의 버전 특성을 타는 API,
익스플로러의 버전 특성을 타는 API 들은
모두 같은 방법으로 사용할 수 있습니다.
물론,
이 결과 생기는 버전 특성은 감수할 수밖에 없겠죠.
적어도 이 문제에 한해서는 VC도 별 수 없습니다.
VC로 개발된 프로젝트가 특정 익스플로러 버전에서만
제대로 돌아가는 경우는 허다하게 봐서 말이죠.



박남영 님이 쓰신 글 :
:
:
: 안녕 하세요 ~~
:
: 모두들 평안 하신가요 ^^
:
: 질문이 있답니다   API중에서 GradientFill함수 써보신 분 계신가요
:
: 이 함수는 좌측과 우측에 각각의 색을 지정하면 두개의 색깔을 위치에 따라
:
: 섞어서 화면을 칠해주는 함수랍니다
:
: 헌데 어찌된게 
:
: 빌더에서 링크를 시키지 못하네요
:
: Obj와 tds파일 지워보고 또 옵션 부분에 패스를 손 봐도 여전히 접근할수 없다는
:
: 링크 에러가 뜨는군요
:
: wingdi.h 파일에 정의된 다른 API함수는 링크 시키면서
:
: 저 함수만 링크못 시키는 이유 아시는 계신가 해서요?
:
: 사용해 보신 분 계시면 좀 부탁 드립니다 그럼 수고 하세요~~
:
:

+ -

관련 글 리스트
9051 [질문] AP I함수 GradientFill 에 대해서 박남영 1070 2001/07/16
9052     Re:[질문] AP I함수 GradientFill 에 대해서 주경민 1179 2001/07/16
9056         Re:Re:[질문] AP I함수 GradientFill 에 대해서 박남영 1386 2001/07/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.