PDA

View Full Version : خطای object required برای شیئ Data



taha_nadri
یک شنبه 17 آبان 1388, 23:46 عصر
با سلام خدمت دوستان برنامه نويس
دوستان من مي خواستم طبق آموزشهايي كه توي سايت بود يه سري تكس باكس رو به يه بانك اطلاعاتي توي اكسسز مرتبط كنم تمام كار ها رو انجام دادم ولي زمان اجرا به ممن Error 424 (object required vرو ميده و خطي رو كه با رنگ نارنجي مشخص كردم رو ايراد ميگيره متن برنامه هم به شرح زيره:



Private Sub form_load()
Data1.DatabaseName = "f:\ClassProjects.mdb"
DaData1.RecordSource = "course"
Data1.Refresh
Text1.DataField = "id"
text2.DataField = "name"
text3.DataField = "family"
End Sub



ممنون ميشم اگر منو راهنمايي كنيد چون خيلي كارم بهش گيره

xxxxx_xxxxx
دوشنبه 18 آبان 1388, 00:00 صبح
سلام، جسارتاً آیا Data1 روی فرم هست یا نه؟

لطفاً برای تاپیک هایی که ایجاد می کنید عنوان مناسب انتخاب کنید. (عنوان اصلاح شد)

taha_nadri
دوشنبه 18 آبان 1388, 01:38 صبح
سلام، جسارتاً آیا Data1 روی فرم هست یا نه؟

لطفاً برای تاپیک هایی که ایجاد می کنید عنوان مناسب انتخاب کنید. (عنوان اصلاح شد)
ممنون از بابت توجه شما دوست خوبم
اگر راستشو بخوايد من تازه كارم
ممنون ميشم اگر جسارت بنده رو ببخشيد
ميشه بفرمايئد data1 كجاي پايگاه داده ها مي تونه باشه
لازم به ذكره كه منازآموزشهاي داخل فروم استفاده كردم براي ساخت اين برنامه

xxxxx_xxxxx
دوشنبه 18 آبان 1388, 01:50 صبح
از پنجره Toolbox یک نمونه از شئ Data رو روی فرم قرار بدید.
به تصویر زیر نگاه کنید:

taha_nadri
دوشنبه 18 آبان 1388, 14:27 عصر
از پنجره Toolbox یک نمونه از شئ Data رو روی فرم قرار بدید.
به تصویر زیر نگاه کنید:
ممنون دوست عزيز
از بابت توجه شما به تايپيك من از شما كمال تشكر رو دارم
دوست عزيز درست شد فقط يه مشكلي كه دوباره برام پيش آمده اينكه من تونستم ركورد داخل باكسها ذخيره كنم ولي اينتر كه مي نزنم به تكس باكس بعدي نميره چطور مي تونم اين مشكل رو حل كنم دوم اينكه چطوري مي تونم يه دكمه تعريف كنم كه بعد از آخريناينتر روي تكس باكس فرم كلاً براي من ذخيره كنه و بعد ريست كنه و روي تكس باكس اول قرار بگيره
واقعاً ممنون ميشم اگر منو راهنمايي كنيد
با تشكر

ƒxmahdi
دوشنبه 18 آبان 1388, 17:45 عصر
مشخصه که با زدن اینتر به تکست یعدی نمیره چون باید کد بنویسی
خوب در اولین تکست دستور زیر رو بنویس توجه کن که مانند نمونه در رویداد keypress باشه


Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text2.SetFocus
Text2.SelStart = 0
Text2.SelLength = Len(Text2.Text)
End If
End Sub

text2 توی کد بالا همون تکست بعدی شماست که خط اول اونو فعال می کنه و خط دوم و سوم متن داخل اونو سلکت می کنه

وقتی که خواستی بعد از آخرین اینتر مقادیر ذخیره بشه و برگرده به تکست اول , در تکست آخر کد زیر :



Private Sub Text10_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Data1.Recordset.AddNew
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End If
End Sub

در کد بالا به خط قرمز توجه کن که این کد ها را در رویداد keypress بنویسی و نام تکست بعدی را هم درست جایگزین کنی
موفق باشی

taha_nadri
سه شنبه 19 آبان 1388, 01:26 صبح
مشخصه که با زدن اینتر به تکست یعدی نمیره چون باید کد بنویسی
خوب در اولین تکست دستور زیر رو بنویس توجه کن که مانند نمونه در رویداد keypress باشه


Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Text2.SetFocus
Text2.SelStart = 0
Text2.SelLength = Len(Text2.Text)
End If
End Sub
text2 توی کد بالا همون تکست بعدی شماست که خط اول اونو فعال می کنه و خط دوم و سوم متن داخل اونو سلکت می کنه

وقتی که خواستی بعد از آخرین اینتر مقادیر ذخیره بشه و برگرده به تکست اول , در تکست آخر کد زیر :



Private Sub Text10_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Data1.Recordset.AddNew
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
End If
End Sub
در کد بالا به خط قرمز توجه کن که این کد ها را در رویداد keypress بنویسی و نام تکست بعدی را هم درست جایگزین کنی
موفق باشی
دوست عزيز ممنون از بابت راهنمايي
رفتن به تكس باكس بعدي درست شد فقط توي تكس باكس آخر فرم ذخيره نميشه و فرم ريست نميشه كه كرسر برگرده توي باكس اول
آيا ميشه براي سيو كردن فرم و ريست شدن يه دكمه تعريف كرد كه تو آخرين باكس بعد زدن اينتر روي آن دكمه بره بعد ريست بشه ؟

taha_nadri
سه شنبه 19 آبان 1388, 14:05 عصر
دوستان عزيز اساتيد تو رو به خدا اگر مي تونيد كمكم كنيد خيلي گيرم

mpmsoft
سه شنبه 19 آبان 1388, 14:23 عصر
آیا رکورد ست رو Update می کنید ؟

Data1.Recordset.Update

taha_nadri
سه شنبه 19 آبان 1388, 18:02 عصر
آیا رکورد ست رو Update می کنید ؟

Data1.Recordset.Update

نه خير امكان داره در باره اين دستور يه مقداري بيشتر برام توضيح بدين كه كجا ازش استفاده كنم تا فرم ريست بسه

mpmsoft
سه شنبه 19 آبان 1388, 18:07 عصر
Private Sub Text10_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Data1.Recordset.AddNew
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
Data1.Recordset.Update
End If
End Sub

taha_nadri
سه شنبه 19 آبان 1388, 22:15 عصر
Private Sub Text10_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Data1.Recordset.AddNew
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
Data1.Recordset.Update
End If
End Sub

نميشه error 3020رو ميده نميشه

xxxxx_xxxxx
پنج شنبه 21 آبان 1388, 15:00 عصر
سلام،
اون قسمت از برنامه تون که می خواید اصلاح بشه رو اینجا قرار بدید. (به صورت پروژه)