|
백호 님이 쓰신 글 :
: 우선 답변은 지금 막 보았는데 자세하게 설명 해주셔서 감사합니다.
:
: 제가 구현할려고 하는 부분에서 막하는 부분이 몇 가지 있는데 그것은
:
: 차트 저장과 전체 외각선에 굵은 선으로 그리고 내부선만을 일반 선으로
:
: 그려서 표를 만들고 싶은데 굵은 선에 관련된 값이 보이지를 않습니다.
:
: xlDouble는 있는데 굵은 선은 없더라고요!!
차트 그리는 법은 굉장히 간단합니다.
차트 컴포넌트를 올리시고...
마찬가지로 connectTo를 사용해서 링크를 합니다.
차트를 그리기위해 우리가 하는 일을 생각하면 쉽습니다~
차트를 그리기 위해서 기본적인 순서는
Excel App에서 삽입->차트 를 누르거나 툴바 아이콘의 차트 버튼을 누르죠...
ExcelChart->ConnectTo(ExcelApp->Chart->Add(파라미터는 스스로^^;;));
이러면 차트 마법사가 뜨겠죠...
그다음 차트를 설정 해주시면 됩니다.
ExcelChart->ChartType=(Excel_xp::XlChartType)2;
차트의 형태를 골라주고,
ExcelChart->SetSourceData( ExcelWs->get_Range("A1","D4") ,(TVariant)51);
차트의 원본 데이터를 선택하구요.
ExcelChart->Location((Excel_xp::XlChartLocation)1,(TVariant)"Sheet1");
차트의 위치를 설정해줍니다~
간단하죠^^
굵은선을 그릴때에는...
외각은 굵고 내부는 얇은 선이죠?
BorderAround 를 써보세요...
Borders->에서도 굵은 선을 지정해 줄수는 있습니다.
하지만. BorderAround가 더 쉽겠죠? 이유는 아래에...
Borders->set_LineStyle();
는 선택된 범위를 모두 지정한 선으로 채우죠,
BorderAround는 선택된 범위의 테두리 선을 그려줍니다.
VARIANT __fastcall BorderAround(VARIANT LineStyle/*[in,opt]*/,
Excel_xp::XlBorderWeight Weight/*[in,def,opt]*/,
Excel_xp::XlColorIndex ColorIndex/*[in,def,opt]*/,
VARIANT Color/*[in,opt]*/)
이렇게 생긴 함수입니다^^
Weight를 높게 줘서 그려보세요 3~5 정도로...
저는 이렇게 했습니다.
BorderAround((TVariant)8, (Excel_xp::XlBorderWeight)3, (Excel_xp::XlColorIndex)0, (TVariant) 0);
함수 원형에서 보시면 아시겠지만.
캐스팅이 꼭 필요합니다~
이건 필요로 하시지 않을까해서... 제가 디파인한 엑셀 상수들을 첨부합니다.
첨부파일 열어보시면...
모든 기본 차트 종류를 전부 디파인 해 놓았습니다.
|