|
권선미 님이 쓰신 글 :
: DBgrid에서... 마우스로 클릭한...Row의 내용을..
: 하나씩.. 텍스트 박스에 넣고 싶거든요..
: 그러니까.. 마우스로 하나의 Row를 클릭하면...
: 그 내용이...컬럼별로 나누어져 각각 텍스트 박스로.. 보여지는거죠..
: 어떻게 하는 건가여?
일단 클릭했을 때 어떤 이벤트를 사용할 것인가는
TDBGrid에 보면 OnCellClick이라는 이벤트가 있습니다.
그걸 사용하면 될 겁니다.
그리고, SelectedRows라는 property에 있는 예제를 보면
The following example copies the selected rows in a db grid to a list box.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (DBGrid1->SelectedRows->Count > 0)
{
AnsiString s = "";
TDataSet *pDS = DBGrid1->DataSource->DataSet;
for (int i=0; i < DBGrid1->SelectedRows->Count; i++)
{
pDS->GotoBookmark((void *)DBGrid1->SelectedRows->Items[i].c_str());
for (int j = 0; j < pDS->FieldCount; j++)
{
if (j>0)
s = s+", ";
s = s + pDS->Fields->Fields[j]->AsString;
}
ListBox1->Items->Add(s);
s = "";
}
}
}
이걸로 하면 각각의 컬럼을 텍스트박스로 보여줄 수 있을겁니다.
|