안녕하세요.
정성훈.해미입니다.
StringGrid는 항상 현재 선택된 셀의 Col, Row값을 가지고 있습니다.
따라서, StringGrid의 Click이벤트만 이용해도 원하는 결과를 얻어낼 수 있습니다.
예제) StringGrid를 Click시 선택된 셀의 값을 Edit1에 보여주기
void __fastcall TForm1::StringGrid1Click(TObject *Sender)
{
//고정된 셀이 아닐 때만
if(StringGrid1->FixedCols<=StringGrid1->Col && StringGrid1->FixedRows<=StringGrid1->Row)
{
/ 선택된 셀의 내용을 Edit1에 보여주기
Edit1->Text = StringGrid1->Cells[StringGrid1->Col][StringGrid1->Row];
}
}
도움이 되셨기를 바랍니다.
//----------------------------------------
// ┏┓
// ┣┻┓┏ ┃┃ 작은 생각이 세상을 바꾼다
// ┃♡┃┣ ┣┫┏┓
// ┗━┛┗ ┃┃┣┫┏┓┏┓ - 정성훈.해미
// ━━━━━━━━━┣┛┣┛┗┫━━━━━━
//----------------------------------------
// 볼랜드 포럼( http://www.borlandforum.com)
// 해미이야기( http://sage5nor.mchol.com)
//----------------------------------------
랴노 님이 쓰신 글 :
: 이 질문 제목이 맞을지는 모르겠는데
: 현제 달력을 제작해서 달력의 해날 날짜 셀을 클릭 했을때 이벤트를 발생 시킬려고 하는데요
: CellSelect 이벤트 사용하니까 얼추 기본적인 사항은 되는데
: 제가 원하는 건 클릭 했을때 이벤트 발생인데
: cellSelect 이벤트 사용시 클릭이 아니라 마우스나 포인트가 그 해당 셀에 올라가기만 하면
: 클릭 하지 않아도 이벤트가 발생 하네요.
: 찾아보니까 mouseDown 이벤트가 있는데 그건 해당 셀의 위치값 그러니까 ACol,ARow 값을
: 못 가져 오고 그냥 마우스 포인트 위치만 가져 오는거 같은데..
: 무슨 방법이 없을까요
: 여기서 중요한건
: 셀을 클릭 했을때 이벤트 발생입니다..
: 좋은 답변 부탁 드립니다..
|