TStringGrid와 같이 TCustomGrid를 상속받은 grid는
Selection이라는 TGridRect 타입의 프로퍼티가 있습니다.
TGridRect은 다음과 같은 모양인데요..
#pragma pack(push, 4)
struct TGridRect
{
union
{
struct
{
TGridCoord TopLeft;
TGridCoord BottomRight;
};
struct
{
int Left;
int Top;
int Right;
int Bottom;
};
};
} ;
#pragma pack(pop)
저걸로 현재 Grid에 selection된 영영을 알수 있습니다.
그럼..
나그네 님이 쓰신 글 :
: 한가지만 더 질문을 드리겠습니다.
: 그럼 StringGrid에서 마우스로 선택된 영역의 Cell 좌표를 어떻게 알 수 있나요?
:
: 선택된 영역의 좌표를 알아야 텍스트로 만들 수 있을텐데요...
:
:
: 장성호 님이 쓰신 글 :
: : 얼마전 델마당에 비슷한 질문이 있어 댓글 단 적이 있는데요
: :
http://www.delmadang.com/community/bbs_view.asp?bbsNo=17&bbsCat=0&st=C&keyword=%uC5D1%uC140&indx=416191&keyword1=엑셀&keyword2=&page=1
: :
: :
[text포멧인경우에 간단히..]
: : Grid나 Excel의 내용이 단순 Text 포멧인경우에는
: : 매우 간단하게 clipboard를 이용하여 서로 copy&paste 할수 있습니다.
: :
: : 원리를 설명드리면..
: : Ctrl+C , Ctrl+V는 모두 ClipBoard(클립보드)를 이용하여 process간 정보를 공유하는 방법이죠
: : 서로 format이 맞다면 어떠한 자료도 공유가 가능할것입니다.
: :
: :
Excel에서 Text포멧의 경우
: :
: : 1) 라인(Line) 구분
CRLF로 하구요
: : 2) 셀(Cell) 구분은 탭(Tab)으로 합니다.
: :
: : 즉 엑셀에서 Cell을 선택해서 Copy하면
: : ClipBoard에 Text포멧에는 위와같은 형식으로 들어갑니다.
: : ClipBoard의 Text포멧의 내요을 가져와서 CRLF와 Tab으로 짤라서 Grid에 넣어주면
: :
엑셀 to Grid 가 될것이구
: :
: : 반대로 Grid의 내용을 위와같은 포멧으로 만들어 Clipboard의 Text포멧으로 저장하면
: : 엑셀에서 Ctrl+V할때 붙여넣기가 됩니다.
: : 이것이 님께서 원하시는
Grid to 엑셀이 되겠네요
: :
: :
: : 그럼..
: :
: :
: : 나그네 님이 쓰신 글 :
: : : StringGrid 에 있는 내용들을 마우스로 영역을 지정한 후 Ctrl-C 한 후에
: : : 엑셀을 열어서 Ctrl-V를 누르면 StringGrid 각 셀의 내용이 엑셀의 각 셀로
: : : 붙여 넣기가 될 수 있도록 해야 합니다.
: : :
: : : 그런데 아이디어가 전혀 떠오르지 않습니다.
: : :
: : : 도와주세요...