2
我試圖複製,或「交換」由一個TListBox中引用的兩種形式。德爾福:如何複製形式
這裏就是我想要做的,但我得到一個錯誤(如下圖所示):
cf1 := TCustomform(lstPackages.Items.Objects[origNdx]);
cf2 := TCustomform(lstPackages.Items.Objects[origNdx - 1]);
cfTmp.Assign(cf1); //error here: cannot assign TfPackage to a TfPackage
cf1.Assign(cf2);
cf2.Assign(cfTmp);
lstPackages.Items.Exchange(origNdx, origNdx - 1);
lstPackages.ItemIndex := origNdx - 1;
所以,我想交換列表項,我需要做類似的事情表單,但我得到的錯誤是我無法分配我正在使用的表單類型。 TfPackage是TCustomForm的後代。
我怎麼能完成同樣的事情?
我明白這一點。但是這些形式也在TFormContainer內(來自Billenium Effects),我也需要在其內部列表中交換它們的位置。 – croceldon 2010-07-08 16:35:41
@croceldon:好的。看我的編輯。 – 2010-07-08 16:55:40
唯一的內部列表TFormContainer似乎有「LRU」列表。手動編輯該列表的順序沒有意義;它是根據每個表單上次使用的時間自動確定的。重新排列列表框不會也不應該改變表單的使用歷史記錄。這聽起來像是你正在使用TFormContainer的列表來設計它不適合的東西。 – 2010-07-08 17:05:50