المشاركات : 17
المواضيع 3
:
: 0
الإنتساب : Dec 2008
10-06-2010, 01:44 PM
(آخر تعديل لهذه المشاركة: 10-06-2010, 01:45 PM بواسطة bo0oda.)
السلام عليكم
تظهر لى رسالة Abstract Error عند
هذة الدالة TStrings.SaveToStream
معا العلم انى استخدم (D2010/D7) ومعا كل منهم تظهر نفس الرسالة
وانا اعرف معنى
Abstract فلماذا تظهر هذه الرسالة ؟
مثلا فى هذا الكود
كود :
var
S : TStream;
begin
S := TStream.Create;
CheckListBox1.Items.SaveToStream(s);// Error raised here
end;
المشاركات : 2,293
المواضيع 157
:
: 81
الإنتساب : Dec 2008
وعليكم السلام ورحمة الله
الصنف TStream هو صنف Abstract
معظم مناهجه ليست لها Implementation
أي أن تعريفها يؤجل إلى أصناف لاحقة...
استخدم عوضا عنه TMemoryStream:
PHP كود :
var
S : TMemoryStream;
begin
S := TMemoryStream.Create;
ListBox1.Items.SaveToStream(s);// No Error here
s.Free;
بالتوفيق أخ bo0oda
المشاركات : 17
المواضيع 3
:
: 0
الإنتساب : Dec 2008
مشكور اخ kachwahed
كنت توصل لهذ من قليل واستخدمت TStringStream
وفعلا لم تظهر الرسالة ولكن عند استخدام دالة TStrings.LoadFromStream
لا يحدث شى
كود :
var
S : TMemoryStream;
i : Integer;
m : TStringList;
begin
S := TMemoryStream.Create; //S.Size = 0
m := TStringList.Create;
for i := 0 to CheckListBox1.Count - 1 do
if CheckListBox1.Checked[i] then m.Add(CheckListBox1.Items[i]) ;
m.SaveToStream(S); //s.Size = 37
ComboBox1.Items.LoadFromStream(s);//nothing happened
ComboBox1.Update;
S.Free;
end;
وفى كل حال لك جزيل الشكر
المشاركات : 2,293
المواضيع 157
:
: 81
الإنتساب : Dec 2008
القراءة والكتابة في TStream تنقلك إلى موضع آخر...
استخدم:
قبل القراءة
بالتوفيق.
المشاركات : 17
المواضيع 3
:
: 0
الإنتساب : Dec 2008
كنت نسى خالص
شكرا اخى وفقك الله لما يحب ويرضى