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
[56832] Re:Re:StringGrid Cell 이 아닌 line 의 색갈 변경 방법? -> 답변 정말정말 감사합니다 (냉무)
궁금이 [] 1185 읽음    2009-05-13 14:44
님 답변 감사합니다


skjoon 님이 쓰신 글 :
: 궁금이 님이 쓰신 글 :
: : Cell 의 색을 변경하는게 아니라
: : line 의 색을 어떤라인은 투명으로 어떤 라인은 까만색으로 지정할수있나요?
:
: 스트링그리드 속성은 기본 속성 그대로 두고 DrawCell 이벤트 함수만 구현했습니다.
: 투명한 라인을 그리시려면 DefaultDrawing 속성을 False로 하시고 라인을 그리지 않던지
: 아니면 DefaultDrawing 속성이 True인 상태에서 스트링그리드의 Color와 같은 색으로 라인을 그리시면 될 것 같습니다.
: 그리고 Cell의 상태에 따라 각각 다른 라인을 그리시려면... 각 상황에 따라.. Rectangle이 아닌 LineTo를 사용해서 일일이 그려주셔야 할 것 같습니다. :->
:
:
: void __fastcall TForm1::StringGrid2DrawCell(TObject *Sender, int ACol,
:       int ARow, TRect &Rect, TGridDrawState State)
: {
:     TCanvas* Canvas = ((TStringGrid*)Sender)->Canvas;
: 
:     if(State.Contains(gdFixed)) {
:         /* Fixed Row 또는 Fixed Column 일 경우에는 그리지 않는다. */
:     } else {
:         Canvas->Pen->Color = clBlue;
: 
:         /* Fixed Row 또는 Fixed Column에 접한 라인은 그리지 않는다. */
: 
:         if(ARow == ((TStringGrid*)Sender)->FixedRows) {
:             if(ACol == ((TStringGrid*)Sender)->FixedCols) {
:                 Canvas->MoveTo(Rect.Left, Rect.Bottom);
:             } else {
:                 Canvas->MoveTo(Rect.Left-1, Rect.Top);
:                 Canvas->LineTo(Rect.Left-1, Rect.Bottom);
:             }
:             Canvas->LineTo(Rect.Right, Rect.Bottom);
:             Canvas->LineTo(Rect.Right, Rect.Top-1);
:         } else if(ACol == ((TStringGrid*)Sender)->FixedCols) {
:             Canvas->MoveTo(Rect.Left, Rect.Top-1);
:             Canvas->LineTo(Rect.Right, Rect.Top-1);
:             Canvas->LineTo(Rect.Right, Rect.Bottom);
:             Canvas->LineTo(Rect.Left-1, Rect.Bottom);
:         } else {
:             Canvas->Rectangle(Rect.Left-1, Rect.Top-1, Rect.Right+1, Rect.Bottom+1);
:         }
:     }
: }
: //---------------------------------------------------------------------------
: 

+ -

관련 글 리스트
56828 StringGrid Cell 이 아닌 line 의 색갈 변경 방법? 궁금이 1103 2009/05/13
56830     Re:StringGrid Cell 이 아닌 line 의 색갈 변경 방법? skjoon 1442 2009/05/13
56832         Re:Re:StringGrid Cell 이 아닌 line 의 색갈 변경 방법? -> 답변 정말정말 감사합니다 (냉무) 궁금이 1185 2009/05/13
56834             Re:Re:Re:StringGrid Cell 이 아닌 line 의 색갈 변경 방법? (추가 질문이요~) canvas 초기화 skjoon 2682 2009/05/13
56845                 Re:Re:Re:Re:StringGrid Cell 이 아닌 line 의 색갈 변경 방법? 정성스런 답변 정말 감사드립니다~ 궁금이 1656 2009/05/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.