تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
اسم ال FUNCTION كمتغير
#11
عليك بالطريقة الاخرى function يتعامل مع براميتر ويرجع بالقيمة بناء على قيمة البارميتر
وهذا مثال

function FUNCC(x as integer) as integer
select case x
case is 20
.
.
.
FUNCC=123
case is 30
.
.
.
FUNCC=111
end select
end function

يعطيك العافية
(( يَا أَيَّتُهَا النَّفْسُ الْمُطْمَئِنَّةُ ارْجِعِي إِلَى رَبِّكِ رَاضِيَةً مَرْضِيَّةً فَادْخُلِي فِي عِبَادِي وَادْخُلِي جَنَّتِي ))

}}}
تم الشكر بواسطة: administrator , Ahmed_Mansoor
#12
أهلا أخي الكريم إسلام , الأداة ScriptControl1 تنفذ سكربت الـ vbscript , وليس كود الفيجول بيسك6 لذلك سيكون فيه أختلافات في بعض الجزئيات في الكود والسكربت لكن أعتقد بأنها ليست كثيرة على حسب علمي حيث ليس لدي خبرة كبيرة في سكربت الـ vbscript , لكن أعتقد أنها ستقوم بما تريده لأنك تريد إستخدامها في عمليات إستدعاء دوال أو إجراءات معينة أو حتى أدوات معينة , حيث أنك تستطيع إضافة كائنات معينة لأداة الـ ScriptControl1 كالفورمات أو أداة محددة ولابد لك عند الإضافة أنك تسند إسم لهذا الكائن ويفضل أن يكون إسم الكائن الحقيقي وهاذي هي طريقة إضافة الكائن لأداة الـ ScriptControl1 بهذه الطريقة :

كود :
ScriptControl1.AddObject "Form1", Form1

في الكود السابق أضفنا الفورم1 في الأداة ScriptControl1 بإسمها الحقيقي وتستطيع تغييره , وعند إضافة كائن الفورم1 فإن أداة الـ ScriptControl1 ستتعرف أو ترى جميع المتغيرات و الدوال والإجراءات الموجودة داخل الفورم1 بشرط أن تكون معرفه بضيغة Public وليس Private للدوال والإجراءات وليس Dim للمتغيرات , وأيضاُ ستتعرف على جميع الأداوت الموجودة على الفورم1 وبذلك تستطيع التحكم بخصائص هذه الأدوات من خلال سكربت الأداة الـScriptControl1 , ولكن يجب عليك إن أردت أن تستخدم أياًً من الدوال أو الإجراءات أو الأدوات وغيرها الموجودة داخل وعلى الفورم1 يجب أن يكون مسبوقا بإسم كائن الفورم1 الذي أضفته للأداة ScriptControl1 متبوعا بنقطه ,وأيضاً تتحكم بخصائص الفورم1 , وطريقة تنفيذ السكربت من خلال هاذي الخاصية التابعة لأداة الـ ScriptControl1 :

كود :
ScriptControl1.ExecuteStatement "Script Here"

هذا كل ما أعرفه عن هذه الأداة .
}}}
تم الشكر بواسطة:
#13
إقتباس :عليك بالطريقة الاخرى function يتعامل مع براميتر ويرجع بالقيمة بناء على قيمة البارميتر
وهذا مثال
شكرآ لك
ولكن ليتك بدلآ من هذا المثال تكتب كودآ لحل نفس المثال الذى كتبته لكم فى بداية سؤالى

إقتباس :الأداة ScriptControl1 تنفذ سكربت الـ vbscript , وليس كود الفيجول بيسك6 لذلك..............................................................................................................................................هذا كل ما أعرفه عن هذه الأداة .
شكرآ لك

[b]ولكم ألف شكر
[/b]
}}}
تم الشكر بواسطة:
#14
تفضل يا اخي ان شاء الله طلبك في المثال المرفق

كود :
Private Sub Command1_Click()
Label2.Caption = funcc(Val(Text1.Text))
End Sub
Function funcc(x As Integer) As Integer
funcc = 222
If x <= 10 Then funcc = 111
End Function


الملفات المرفقة
.rar   func.rar (الحجم : 1.14 ك ب / التحميلات : 43)
}}}
تم الشكر بواسطة: abulayth , Ahmed_Mansoor
#15
شكرآ لك
ولكن أين هى الFUNC
لقد كان طلبى أن لدى 2 FUNC1, FUNC2)  FUNCTIONS )

  وأريد التوجه الى الأولى FUNC1  اذا كانت NNN <= 10  أو التوجه الى الثانية FUNC2  اذا كانت غير ذلك
ولأنى سأحتاج الى ذلك  فى عدة مواضع فى الكود لا فى موضع واحد
  فلا أريد فى كل مرة كتابة هذا الشرط
كود :
 If NNN <= 10 Then FUNC1 Else: FUNC2
وانما أريد فى كل مرة كتابة جملة واحدة
كود :
FUNCC
على أن يكون FUNCC متغير يعبر عن اسم الFUNCTIONS  يحسب مرة واحدة فى بداية الكود
كود :
 If NNN <= 10 Then FUNCC = "FUNC1" Else: FUNCC = "FUNC2"
ولكم ألف شكر
}}}
تم الشكر بواسطة:
#16
اخي الكريم انت في هذه الحالة لست بحاجة الى كتابة الشرط مرة اخرى جرب الكود مرة اخرى حيث يتم استدعاءة فقط بجملة واحدة من اي مكان في البرنامج

يعطيك العافية
(( يَا أَيَّتُهَا النَّفْسُ الْمُطْمَئِنَّةُ ارْجِعِي إِلَى رَبِّكِ رَاضِيَةً مَرْضِيَّةً فَادْخُلِي فِي عِبَادِي وَادْخُلِي جَنَّتِي ))

}}}
تم الشكر بواسطة: Ahmed_Mansoor
#17
كودك لم أجد فيه نفس مثالى أصلآ
لم أجد أيآ من المتغيرات AA ,NNN

إقتباس :ولكن ليتك بدلآ من هذا المثال تكتب كودآ لحل نفس المثال الذى كتبته لكم فى بداية سؤالى
}}}
تم الشكر بواسطة:
#18
السلام عليكم ورحمة الله

أخي اسلام

جرب هذا الكود وهو مشابه لفكرة الأخوة
PHP كود :
'Private Sub FUNC1()
'    
AA 111
'End Sub

'
Private Sub FUNC2()
'    AA = 222
'
End Sub

Private Sub Command1_Click()
    
NNN Val(Text1.Text)
    Print 
"NNN  "NNN
    
'If NNN <= 10 Then FUNCC = "FUNC1" Else  : FUNCC = "FUNC2"
    '
FUNCC()
    
FUNCC(NNN)
    
REM"المفروض بالجملة السابقة يتوجه الى FUNC1  أو الى FUNC2  حسب قيمة المتغير FUNCC"
    
Print(AA)
End Sub

Sub FUNCC
(ByVal NNN As Integer)
    
Select Case NNN
        
Case Is <= 10
            AA 
111
        
Case Else
            
AA 222
    End Select
End Sub 
}}}
تم الشكر بواسطة: Ahmed_Mansoor
#19
هذا الحل لنفس المتغيرات المستخدمة

كود :
Private Sub Command1_Click()
Dim NNN As Integer
NNN = Val(Text1.Text)
AA = funcc(NNN)
Print AA
End Sub
Function funcc(x As Integer) As Integer
funcc = 222
If x <= 10 Then funcc = 111
End Function
يعطيك العافية
(( يَا أَيَّتُهَا النَّفْسُ الْمُطْمَئِنَّةُ ارْجِعِي إِلَى رَبِّكِ رَاضِيَةً مَرْضِيَّةً فَادْخُلِي فِي عِبَادِي وَادْخُلِي جَنَّتِي ))

}}}
تم الشكر بواسطة: Ahmed_Mansoor , Ahmed_Mansoor
#20
ولكنه وضع الشرط هنا فى كود الFUNC
لا أريد أى شرط فى أى FUNC
انما يكون الشرط فى كود الزر كما فى مثالى
ملحوظة: فى كل FUNC سأضع كودآ كبيرآ مختلف تمامآ عن ال FUNC الأخرى
             انما هذا الكود فى مثالى مجرد مثال

ولكم ألف شكر
}}}
تم الشكر بواسطة:


التنقل السريع :


يقوم بقرائة الموضوع: