2010-12-01 79 views
1

我在这里与Delphi做了一个小离线购物车应用程序,我被卡住了。我需要将框架插入滚动框(充当购物车项目行,我可以在其中删除项目,添加数量等),从列表视图中选择产品。但我不能在那里添加多个框架。将多个TFrame控件添加到TScrollBox

procedure TfrmMain.lvProductsSelectItem(Sender: TObject; Item: TListItem; 
    Selected: Boolean); 
var 
    cartRow: TFrame1; 
    i: Integer; 
    count: Integer; 
begin 

    cartRow := TFrame1.Create(nil); 
    cartRow.Edit1.Text := Item.Caption; 
    cartRowArr := TObjectList<TFrame1>.Create; 
    cartRowArr.Add(cartRow); 
    count := cartRowArr.Count; 
    for i := 0 to cartRowArr.Count - 1 do 
    begin 
    ScrollBox1.InsertControl(cartRowArr[i]); 
    end; 
end; 

它总是在那里的框架,不能正确的。如果我选择产品我需要插入框架,如果我选择另一个产品我需要插入其他框架。如果我选择的产品在那里销售,那么将数量提高一个。

任何帮助表示赞赏!

回答

2

我怀疑你想在滚动框中的多个框架结束在彼此之下。您是否尝试添加

cartRow.Align := alTop; 

这将导致行自动将它们自己垂直排列在一起。

+0

谢谢,它解决了这个问题!现在,当我选择项目时,它将在滚动框中显示两行。我删除了循环并更改了添加控件到ScrollBox1.InsertControl(cartRowArr.Last)的代码; – evilone 2010-12-01 08:40:09