|
답글쓰기다 안돼요...DB에러라고 뜨는데... ^^;
그래서 새글로 씁니다.
여기서 부터 답변...
ExDBGrid를 빌더에 설치했는데... 도와주세요 [bcb_qna/23565] 신종태 2003-01-08
우연한 기회에 이글을 보게되는군요... ^^
방금 다운 받아서 해본결과 같은 에러가 나는 군요...
이게 정확한 방법인지는 모르겠으나 저는 에러를 제거했습니다...
일단 전 C++ Builder 6 이고 Rx Lib 2.75를 씁니다.
소스를 수정해야 하는데..
ExDBGrid.hpp 에 보면
__property Grids::TGridCoord StartCell = {read=FRangeSelection.Left, write=SetStartCell};
__property Grids::TGridCoord EndCell = {read=FRangeSelection.Right, write=SetEndCell};
이 두군데서 에러가 나죠...
__property Grids::TGridCoord StartCell = {read=FRangeSelection.TopLeft, write=SetStartCell};
__property Grids::TGridCoord EndCell = {read=FRangeSelection.BottomRight, write=SetEndCell};
이렇게 바꾸시고...
ExRxDBGrid.hpp도 마찬가지로...
Left -> TopLeft, Right -> BottomRight로 바꾸시면 됩니다...
그러고 나면 남는 에러는
: [C++ Error] rxStrUtils.hpp(78): E2189 extern variable cannot be initialized
: [C++ Error] rxStrUtils.hpp(78): E2188 Expression syntax
: [C++ Error] rxStrUtils.hpp(78): E2293 ) expected
.....
이건 Rx Lib 소스를 수정해야 되더군요...
RxStrUtils.pas에 있는
function GetCmdLineArg(const Switch: string; SwitchChars: TCharSet): string;
여기서 SwitchChars가 문제가 됩니다.
이게 예약어 같더군요.. 빌더에서 사용하는... 그래서 충돌이 생기는거죠...
그래서 전
function GetCmdLineArg(const Switch: string; SwitchChar: TCharSet): string;
이렇게 바꾸어 줬습니다.
RxStrUtils.hpp 파일에도 당연히 변수 이름을 바꾸어 줘야 겠죠... ^^;
SwitchChars 를 SwitchChar로... (사실 꼭 이렇게 바꿀필요는 없고 SwitchChars만 아니면 됩..)
이렇게하니 에러는 모두 사라지네요...
제 짧은 생각에는 크게 소스를 수정한 것이 아니라 함수의 변수 이름만 바꾸었으므로
프로그램에 이상이 생기지는 않을 것 같군요...
그럼이만...
늦었지만 도움이 되시길....
p.s 생각보다 괜찮은 DBGrid네요.. 찾아보니 독특한 기능도 많구요...
겉보기가 좀 덜 화려해서 그렇지... 있을꺼 다 있네여... ^^
|