태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.


댓글 하나가 운영자에겐 커다란 힘이 됩니다!

아래의 글은 네이버 카페 TipsSoft에서 스크랩한 것입니다.

GradientFill 함수를 이용하여 그라데이션 효과를 주는 방법에 대해서 알아보겠습니다.
 
GradientFill 함수 기능은 msimg32.dll 이 제공됩니다. msimg32.dll 은 C:\%WINDOWS%\system32 폴더에
위치하며, 소스 코드를 컴파일하고 링크할 때 msimg32.dll 에 대한 정보를 제공하기 위해서
메뉴에서 Project -> Settings(alt + f7)를 선택하면 project setting 대화상자가 출력되는데 이 대화상자에서
link 탭의 Object/library modules : 입력란에 msimg32.lib 를 등록합니다.
 
 
 
// GradientFill 함수의 원형은 다음과 같습니다.
BOOL GradientFill(
    HDC hdc,
    CONST PTRIVERTEX pVertex,    // TRIVERTEX 구조체 배열의 포인터
                                                     // (TRIVERTEX 구조체는 색상 및 위치 정보를 가지고 있다.)
    DWORD dwNumVertex,             // TRIVERTEX 구조체의 수
    CONST PVOID pMesh,               // 삼각형 모드일 경우에는 GRADIENT_TRIANGLE 구조체를,
                                                     // 사각형 모드일 경우 GRADIENT_RECT 구조체의 포인터를 명시한다.
    DWORD dwNumMesh,               // pMesh 인자에 사용되는 구조체의 수
    DWORD dwMode                       // 그라데이션 모드
                                                     // (GRADIENT_FILL_RECT_V : 가로, GRADIENT_FILL_RECT_H : 세로,
                                                     //  RADIENT_FILL_TRIANGLE : 트라이앵글)
);
 

// 해당 클래스의 OnPaint()함수에 아래의 코드를 추가한다.
// 사각형 그라데이션 그리기
    TRIVERTEX vert[2];
    GRADIENT_RECT rect;
    
    // 그라데이션의 시작좌표를 명시한다.
    vert[0].x      = 0;
    vert[0].y      = 0;
 
    // 그라데이션의 시작색상을 명시한다.
    vert[0].Red    = 0x0000;

위의 정보가 도움이 되셨나요? 그렇다면 댓글 하나만 남겨주세요.
댓글 하나가 운영자에겐 커다란 힘이 됩니다!

Write your message and submit
« PREV : 1 : ... 83 : 84 : 85 : 86 : 87 : 88 : 89 : 90 : 91 : ... 436 : NEXT »