PDA

View Full Version : یک سوال ساده راجع به ماژول ها



reza6384
شنبه 05 مرداد 1387, 10:30 صبح
سلام. من یه سوال ساده دارم.
من برنامه نویسی رو با VB2005 شروع کردم، ولی دست بر قضا زد و مجبورم با Embedded Visual Basic 3.0 یک برنامه بنویسم، البته کسانی که VB6 کار میکنند هم می تونن به سوال من جواب بدن.
سوالم اینه که من می خوام یک سری توابع رو که ازشون زیاد استفاده می کنم در یک ماژول قرار بدم و اونها رو فراخوانی کنم. کدی که توی ماژول نوشتم این بود :



Option Explicit
Public Function RecourdCounter(ByVal Query As String) As Integer
Dim TRS As ADOCE.Recordset
Set TRS = CreateObject("ADOCE.Recordset.3.0")
TRS.Open Query, G_AdoCnn, adOpenStatic, adLockOptimistic
Dim Result As Integer
Result = TRS.RecordCount
TRS.Close
recordcounter = Result
End Function



و توی برنامه وقتی می زنم BestFunctions.RecordCounter، موقع اجرا به من میگه که متغیر BestFunctions تعریف نشده. BestFunctions اسم ماژول من هست.
ممنون.

.:KeihanCPU:.
شنبه 05 مرداد 1387, 11:59 صبح
چرا اسم ماژول رو مینویسی؟
من کامل نفهمیدم(اون قطعه کد رو هم بذار)

reza6384
شنبه 05 مرداد 1387, 12:20 عصر
این هم کدی که از تابع ماژول استفاده کردم :



Private Sub BtnProductOK_Click()
Dim RC As Integer
RC = BestFunctions.RecourdCounter("Select * From Product ")
MsgBox RC, vbApplicationModal
End Sub

reza6384
یک شنبه 06 مرداد 1387, 09:05 صبح
کسی نیست به این سوال من جواب بده؟؟؟؟؟
وقتی می خواهیم یک تابع رو در فرم های مختلف استفاده کنیم باید چکار کنیم؟ باید بذاریمش توی ماژول و بعد فراخوانیش کنیم، اما من اینجا یه اشتباهی می کنم. لطفا راهنمایی کنید.

.:KeihanCPU:.
یک شنبه 06 مرداد 1387, 09:23 صبح
Private Sub BtnProductOK_Click()
Dim RC As Integer
RC = RecourdCounter("Select * From Product ")
MsgBox RC, vbApplicationModal
End Sub
اینو امتحان کن

reza6384
دوشنبه 07 مرداد 1387, 11:28 صبح
این رو هم امتحان کردم . بازهم می گه که RecordCounter تعریف نشده. :گریه::گریه:

reza6384
سه شنبه 08 مرداد 1387, 04:32 صبح
ببینید. سوال من خیلی ساده هست، فقط و فقط می خوام یک سری توابع رو مشترکا بین چند تا فرم استفاده کنم. چکار باید بکنم؟
لطفا جواب بدین.

xxxxx_xxxxx
سه شنبه 08 مرداد 1387, 08:52 صبح
نمي دونم درست متوجه منظورتون شدم يا نه ولي فكر مي كنم موقع صدا زدن تابع نيازي به نام ماژول نباشه چون شما تابع رو به صورت عمومي تعريف كردين.