StringGrid에 ComboBox를 넣긴 넣었는데 그 ComboBox에 item값을
넣어줄려니까 안되네요.
꼭 고수님들의 답변을 부탁드립니다.
소스는 다음과 같습니다.
procedure TForm1.Button2Click(Sender: TObject);
var y : integer;
begin
for y := 1 to stringgrid1.rowcount - 1 do
begin
StringGrid1.Objects[3, y] := TComboBox.Create(StringGrid1);
with TComboBox(StringGrid1.Objects[3, y]) do
begin
Parent := StringGrid1;
BoundsRect := StringGrid1.CellRect(3, y);
Width := StringGrid1.ColWidths[1];
Height := StringGrid1.RowHeights[1];
Style := csDropDownList;
ItemHeight := 10;
Items.Add('test'); //이렇게 해도 값이 안들어가네요....흑흑흑
end;
end;
end;
콤보박스에 값이 들어가 졌네요... 단지 화면상에만 보이지 않을뿐입니다. 스트링그리드의 셀이 다시 그려지면서 펼쳐진 드랍다운리스트위에 다시 그려지기 때문입니다. 콤보박스의 Parent를 폼으로 해보세요... 위치도 약간씩 조정하시구요...
^^ 항상 즐코하세요...
시카고 wrote:
> StringGrid에 ComboBox를 넣긴 넣었는데 그 ComboBox에 item값을
> 넣어줄려니까 안되네요.
> 꼭 고수님들의 답변을 부탁드립니다.
> 소스는 다음과 같습니다.
>
> procedure TForm1.Button2Click(Sender: TObject);
> var y : integer;
> begin
> for y := 1 to stringgrid1.rowcount - 1 do
> begin
>
> StringGrid1.Objects[3, y] := TComboBox.Create(StringGrid1);
> with TComboBox(StringGrid1.Objects[3, y]) do
> begin
>
> Parent := StringGrid1;
> BoundsRect := StringGrid1.CellRect(3, y);
> Width := StringGrid1.ColWidths[1];
> Height := StringGrid1.RowHeights[1];
> Style := csDropDownList;
> ItemHeight := 10;
> Items.Add('test'); //이렇게 해도 값이 안들어가네요....흑흑흑
>
> end;
> end;
> end;