delphi4arab منتديات دلفي للعرب

نسخة كاملة : زر par defeult لتعبئة جدول ببيانات
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
عملت برنامج و أردت ان أجعل بعض البيانات قاعدية (standard )
اي لما اضغط على الزر par defeult
تطهر في dbedit ; dbcombobox ; dbmemo
بيانات عامة عند اغلب الناس
مثلا اغلب الزبائن يشترون الحليب
فلما اضغط على par defeult تظهر في dbcombobox الحليب
مشكورين
استعملت

dbcombobox1.itemindex=0;

و لكن في قاعدة البيانات لم تحفظ
اكتب قيم الحقول مباشرة
مثلا لديك الحقول Name/Adress/Age
يكفي كتابة شيئ مثل
كود :
if Not (Table1.State in [DsEdit,DsInsert]) then Table1.Insert; Table1.FieldByName('Name').AsString:='Mohammed'; Table1.FieldByName('Adress').AsString:='Somewhere near...Algiers,Algeria'; Table1.FieldByName('Age').AsInteger:=4;
أنتبه لنوع الحقول...AsInteger/AsFloat/AsBoolean/AsString...
الحمد لله لقد استفدت منكم كثيرا

بارك الله فيك
يمكنك استخدام الحدث OnNewRecord عوض الزر:
PHP كود :
procedure TForm1.Table1NewRecord(DataSet: TDataSet);
begin
  Table1
.FieldByName('Article').Value := 'Lait';
end; 
عوض تحديد نوع الحقل (AsInteger/AsString...) استخدم Value كنوع Variant
بالتوفيق.
لم افهم تاكود الذي كتبته

حبذا لو تشرح اخي kachwahed
حبذا لو تحدد الذي لم تفهمه؟
كود :
Value := 'Lait'
أي الكتابة في الحقل مهما كان نوعه القيمة 'Lait' أي باعتباره Variant ليس له نوع محدد.
شكرا لك لقد توضح الامر

بطريقة اخرى عندما تكتب
كود :
C:=A+B;
دلفي (Delphi Compiler) يحول المتغيرات لتوافق
ان كان C من نوع Real دلفي يحول ناتج جمع A و B الى Real ان كانو من نوع اخر مثلا Integer والا حدث خطا (ونفس الشيئ بالنسبة للمتغيرين عند الجميع)
القاعدة:
الطرفين دائما من نفس النوع
ان لا، غير احد الطرفين ليتوافق مع الأخر

عندما نكتب .AsInteger فاننا نخبر دلفي ان يتعامل مع المتغير كنص
عندما نكتب .AsBoolean نخبره انه منطقي من نوع Boolean
وهكذا نخبر الCompiler نوع المتغير ليتعامل معه بالشكل الصحيح

عندما نستخدم Value نترك لدلفي حرية التحويل حسب النوع الملائم!