刪除運行時生成按鈕我有被填充在運行時按鈕幾個TPanels。然而,我用來從他們的父面板釋放我的按鈕的代碼有時會產生訪問衝突錯誤。德爾福 - 從TPanel
procedure TfrmTakeOrder.FreeItemButtons(buttons : array of TButton);
var
cnt,i : integer;
begin
for i := 0 to gridLayoutItems.ControlCount - 1 do
begin
buttons[i].Free;
buttons[i] := nil;
end;
end;
有沒有更好的方式來做到這一點?請記住,其他各小組有按鈕也和我想有wount intefer與其他面板按鈕的「本地化」釋放。
這已經爲我做了訣竅:) – davykiash 2011-06-09 11:21:50
請確保你放棄了你自己的按鈕陣列。否則,如果您嘗試使用它們,則會引用已釋放陣列中的內存並導致訪問衝突。 – jpfollenius 2011-06-09 12:10:32