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
[46663] Re:Re:Re:StringGrid에서 OnDrawCell 이벤트가 제대로 호출이 안 되는 것 같습니다.
착한아들 [] 1281 읽음    2006-09-27 17:26
우선 DefaultDrawing을 False로 하셨는지 확인해주십시요.
만약 True로 하였을 경우 TStringGrid가 자체적으로 다시 Repaint작업을 수행합니다.
고로 원하시는대로 화면 디자인이 안나올수 있습니다.

그리고 두번째 함수 링크에 대한 에러에 대한 답변입니다.
문제는 Form은 포인터로 생성되어져 있기 때문에 프로그램이 Run하면서
메모리에 만들어집니다. 고로 프로그램이 Run하기 전에는
AcclistGridDrawCell이란 함수도 아직 생성은 안되었다는 말이죠.
그로인해, 컴파일 할때 아직 생성되어 있지 않는 함수와 링크를 걸려고 하니 당연히 에러가 발생
되는 겁니다. 이것을 피할 수 있는 방법은
헤더 파일에
TDrawCellEvent FOnDrawCell;
을 하나 지정해 주시고요.
FormCreat함수에
FOnDrawCell = AcclistGridDrawCell;
AcclistGrid->OnDrawCell = FOnDrawCell;
구문을 추가해 보십시요.
컴파일 자알 됩니당... *^^*


하야로비 님이 쓰신 글 :
: BloodWolf 님이 쓰신 글 :
: : 폼 생성자에서 아래와 같이 하셨나요??
: :
: : AcclistGrid->OnDrawCell=AcclistGridDrawCell;
:
: 그게... Object Inspector에서 설정을 했습니다. 더블클릭으로 자동으로 만들어준 것이죠. 폼 생성자에서는 위에처럼 쓰기만 하면 이런 에러가 납니다.
:
: [C++ Error] ncmainctl.cpp(69): E2034 Cannot convert 'void (_fastcall * (_closure )(TObject *,int,int,TRect &,TGridDrawState))(TObject *,int,int,TRect &,TGridDrawState)' to 'TDrawCellEvent'

+ -

관련 글 리스트
46637 >>어쨌든 해결<< StringGrid에서 OnDrawCell 이벤트가 제대로 호출이 안 되는 것 같습니다. 하야로비 946 2006/09/26
46638     Re:StringGrid에서 OnDrawCell 이벤트가 제대로 호출이 안 되는 것 같습니다. BloodWolf 952 2006/09/26
46639         Re:Re:StringGrid에서 OnDrawCell 이벤트가 제대로 호출이 안 되는 것 같습니다. 하야로비 998 2006/09/26
46663             Re:Re:Re:StringGrid에서 OnDrawCell 이벤트가 제대로 호출이 안 되는 것 같습니다. 착한아들 1281 2006/09/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.