如何在StringGrid的CELL實現EDIT的功能 |
缺席
|
Kriss
一般會員 發表:1 回覆:0 積分:0 註冊:2011-10-06 發送簡訊給我 |
|
olozil
一般會員 發表:0 回覆:5 積分:6 註冊:2008-04-28 發送簡訊給我 |
StringGrid元件上放一個Edit元件模擬成cell
在StringGrid的Click事件取得所在cell [code cpp] int nCol, nRow; TPoint MousePoint; TRect rct; //取得滑鼠位置 MousePoint = StringGrid_Single->ScreenToClient(Mouse->CursorPos); //取得滑鼠位置的Cell StringGrid_Single->MouseToCell(MousePoint.x, MousePoint.y, nCol, nRow); //顯示編輯項 Edit_Single->Show(); this->ActiveControl = Edit_Single; //取得Cell資訊 rct = StringGrid_Single->CellRect(nCol, nRow); //調整Edit顯示 MousePoint.x = rct.Left; MousePoint.y = rct.Top; MapWindowPoints(StringGrid_Single->Handle, StringGrid_Single->Parent->Handle, (POINT *)&MousePoint, 1); this->ActiveControl->SetBounds(MousePoint.x-1, MousePoint.y-1, rct.Width() 2, rct.Height() 2); //取得內容 Edit_Single->Text = StringGrid_Single->Cells[nCol][nRow]; [/code] 此外, Edit的AutoSize屬性設為false 至於怎麼寫回cell懶得寫了... |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |