ايران ويج

نسخه‌ی کامل: ساخت ديتابيس با فايل
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
به نظرم اصولی نيست واسه پروژه
مشگل اول اينه که بر اساس شماره سرچ ميکنه چون 0000 = 0 هست بايد متغيرها رو به استرينگ تبديل کنی تا مشگل هل شه ولی هيچوقت کد پستی صفر نميشه
مشگل دوم قسمتی که کپشن رو عوض ميکنه رو بزار بالای دستور که فرم رو نشون ميده
سلام دوستان اگه ممکنه این خط هایی رو که متوجه نشدم رو برام توضیح بدید آخه باید برم این برنامه رو برای بچه ها توضیح بدم (استادمون کلی حال کرد آخه هیچ کی یه خط هم ننوشته بود ، عصبانی شده بود به بچه ها فوش می داد می گفت گاگول ها از این یاد بگیرید...Biggrin)
اول از همه این خط
ByVal چیه؟؟ یادم قبلنا توی کتاب سوم دبیرستان داشتیم اما فراموش کردم.Amaze
کد:
Function NewUser(ByVal Name As String, ByVal Reshte As String, ByVal PostalCode As String, ByVal *** As String, Address As String, ByVal Phone As String)

و این قسمت
این Optional هم جدیده تا حالا ندیده بودم.Confused
بقیه خط ها هم یه توضیح میدید مثلا اونجا اون 0 یا اون 1 برای چیه؟
ببخشید من اینقدر سوال می کنم Shy
کد:
Function FindItem(ByVal PostalCode As String, Optional Name As String, Optional Reshte As String, Optional Address As String, Optional *** As String, Optional Phone As String) As Boolean
Dim mData As String, DBData As String
Dim Nam As String, Resh As String, uID As String
DBData = OpenFile
Do While InStr(DBData, "<item>") > 0
mData = Split(Split(DBData, "<item>")(1), "</item>")(0)
uID = Split(Split(mData, "<id>")(1), "</id>")(0)
If uID = PostalCode Then
Name = Split(Split(mData, "<nam>")(1), "</nam>")(0)
Reshte = Split(Split(mData, "<Resh>")(1), "</Resh>")(0)
Address = Split(Split(mData, "<adr>")(1), "</adr>")(0)
*** = Split(Split(mData, "<sx>")(1), "</sx>")(0)
Phone = Split(Split(mData, "<tel>")(1), "</tel>")(0)
FindItem = True
Exit Function
End If
DBData = Right(DBData, Len(DBData) - InStr(DBData, "</item>"))
DoEvents
Loop
End Function

راستی یه چیزی با اینکه من همه فونت ها رو روی Tahoma تنظیم کرده بودم اما فونت این برنامه روی بعضی از سیستم ها درست نشون نمی داد!!!!!
اون سیستم ها فونت Tahoma هم داشتن!؟
Byval مخفف کلمه Byvalue هستش. اون رو وقتی ابتدای آرگومان می آری یعنی مقداری که داخل آرگومان هستش رو بگیر، یه چیز دیگه هم داریم به نام ByRef که مخفف ByRefrence هستش(البته فکر کنم فقط تو دات نت باشه) که اون یعنی همه چیز متغیر رو به عنوان آرگومان در نظر بگیر، مثلاً Method هاشو یا بقیه چیز هاش

Optional یعنی هم می شه وقت فراخوانی Function، بهش مقدار داد هم می شه نداد. چون می شه بهش مقدار نداد حتماً وقت تعریفش باید یه مقدار Default براش بذاری
کار byval اينه که اگه پشت آرگومنت قرار بگيره يعنی اين پارامتر رو توی تابع بايد مقدار بدی و نميشه ازش مقدار گرفت بعضی وقتها توی بعضی از تابع ها لازم ميشه ولی اينجا ضرورتی نداره ولی برای اينکه مشخص کنيم که بايد اين پارامتر رو پر کنيد byval قرار ميگيره
optional برای اين هست که آرگومنت رو اختياری ميکنه چون اين تابع FindItem دو کار انجام ميده 1. پيدا کردن تمام مشخصات به وسيله کد پستی 2.تشخيص تکراری بودن مشخصات بر اساس کد پستی
تو قسمت اول پرامترهايی که با optional شروع ميشن مقدار دهی ميشن اما تو قسمت دوم برای تشخيص دادن تکراری بودن فقط به کد پستی نياز هست پس نيازی به پر کردن پارامترهای ديگه نداره

تابع Split برای جدا کردن رشته به کار ميره
توی اين برنامه از دو تا تابع Split استفاده شده با گذشتن 0 قسمت اول رشته رو جدا ميکنه و با گذشتن 1 قسمت دوم رشته
مثال:
کد:
A = Split("<nam>Salam</nam> khoobi", "<nam>")(1)
بنا بر اين A برابر ميشه با: salam</nam> khoobi

کد:
A = split(A, "</nam>")(0)
بنا بر اين a برابر ميشه با: salam

يه رشته و يه كاراكتر جدا كننده ميگيره و با توجه به اون كاراكتر كلمه هاي موجود توي اون رشته رو توي يك آرايه رشته اي قرار ميده.مثلا اگه رشته ي “VB Is Easy” و كاراكتر “ “ رو بهش بديم اعضاي آرايه اي كه برميگردونه “VB" ، “Is” و “Easy” هستن.يا اگه “One_Two_Three” و “_” رو بهش بديم اعضاي آرايه “One” ، “Two” و “Three” ميشن.آرگومان اول رشته ي مورد نظره.آرگومان بعدي كاراكتر مورد نظره كه بطور پيشفرض “ “ (Space) در نظر گرفته ميشه.آرگومان بعدي حداكثر تعداد اعضا هستش مثلا اگه براي مثال قبلي اين آرگمان رو 2 ميگذاشتين اعضاي آرايه “One” و “Two” ميشدن(عضو سومي وجود نداشت) آرگومان بعدي هم نوع مقايسه براي كاراكتريه كه بهش ميديم

---------------------------------------------------------------------
بايد زبان سيستمی رو به فارسی تغيير ميدادی
سلام

نقل قول: البته فکر کنم فقط تو دات نت باشه
نه ، تو زبونهای معمولی هست ؛ تو vb معمولی هم هست
(۱۷-اسفند-۱۳۸۷, ۲۱:۰۸:۵۹)crazyfull نوشته است: [ -> ]تابع Split برای جدا کردن رشته به کار ميره
توی اين برنامه از دو تا تابع Split استفاده شده با گذشتن 0 قسمت اول رشته رو جدا ميکنه و با گذشتن 1 قسمت دوم رشته
مثال:
کد:
A = Split("<nam>Salam</nam> khoobi", "<nam>")(1)
بنا بر اين A برابر ميشه با: salam</nam> khoobi

کد:
A = split(A, "</nam>")(0)
بنا بر اين a برابر ميشه با: salam
کار برد تابع Split رو متوجه شدم اما شما اینجا چرا 2 بار پشت سر هم از Split استفاده کردید
کد:
Nam = Split(Split(mData, "<nam>")(1), "</nam>")(0)

نقل قول: بايد زبان سيستمی رو به فارسی تغيير ميدادی
منظورتون رو متوجه نشدم/چطوری؟
از قسمت Regional and Language Options باید این کار رو کنم؟
چون بايد بين تگ <nam> و </nam> رو به دست بياريم split اول از تگ <nam> به بعد رو جدا ميکنه Split دوم از تگ </nam> به قبل رو بدست مياره
=============================================
آره
اگه فونتهای برنامه اجق وجق ديده ميشه بايد از سربرگ advanced فارسی رو انتخاب کنی اما اگه به صورت علامت سؤال ديده ميشه از سربرگ Languages فونتها رو نصب کن و دوباره چک کن که سربرگ Advanced فارسی باشه
صفحه‌ها: 1 2