20-07-13, 05:03 AM
السلام عليكم...
يمكنك استعمال الـ Forms Collection لهذا الغرض. هذا الـ Collection يحتوي على كل الـ Forms التي تم تحميلها - و لم يتم إغلاقها - سواءً أكانت مرئية (Visible = True) أو مخفية (Visible = False). و تلقائياً تتم إضافة و إزالة الـ Forms من هذا الـ Collection عند تحميل أو إغلاق النوافذ.
لجعل الأمر عاماً ضع الدالتين التاليتين في Module:
* الدالتان تحتاجان إلى تمرير اسم الـ Form. الدالة الأولى IsFormLoaded تعيد True إذا كانت النافذة المطلوبة تم تحميلها حتى و إن كانت مخفية (Visible = False). و الدالة الثانية IsFormVisible تعيد True إذا كانت النافذة محملة و مرئية (Visible = True) و إلا فإنها تعيد False (في حالة لم يتم تحميل الـ Form أو تم إخفاؤها باستعمال الوظيفة Hide أو بضبط الخاصية Visible على False).
مثلاً:
نرجو الاستفادة و السلام.
يمكنك استعمال الـ Forms Collection لهذا الغرض. هذا الـ Collection يحتوي على كل الـ Forms التي تم تحميلها - و لم يتم إغلاقها - سواءً أكانت مرئية (Visible = True) أو مخفية (Visible = False). و تلقائياً تتم إضافة و إزالة الـ Forms من هذا الـ Collection عند تحميل أو إغلاق النوافذ.
لجعل الأمر عاماً ضع الدالتين التاليتين في Module:
كود :
' دالة لمعرفة ما إذا تم تحميل نافذة أم لا
Public Function IsFormLoaded(ByVal AFormName As String) As Boolean
Dim AForm As Form
For Each AForm In Forms
If UCase$(AForm.Name) = UCase$(AFormName) Then
IsFormLoaded = True
Exit Function
End If
Next AForm
IsFormLoaded = False
End Function
' دالة لمعرفة ما إذا كانت نافذة مرئية أم لا
Public Function IsFormVisible(ByVal AFormName As String) As Boolean
Dim AForm As Form
For Each AForm In Forms
If UCase$(AForm.Name) = UCase$(AFormName) Then
IsFormVisible = AForm.Visible
Exit Function
End If
Next AForm
IsFormVisible = False
End Function* الدالتان تحتاجان إلى تمرير اسم الـ Form. الدالة الأولى IsFormLoaded تعيد True إذا كانت النافذة المطلوبة تم تحميلها حتى و إن كانت مخفية (Visible = False). و الدالة الثانية IsFormVisible تعيد True إذا كانت النافذة محملة و مرئية (Visible = True) و إلا فإنها تعيد False (في حالة لم يتم تحميل الـ Form أو تم إخفاؤها باستعمال الوظيفة Hide أو بضبط الخاصية Visible على False).
مثلاً:
كود :
Private Sub Command4_Click()
If IsFormVisible("Form5") Then
MsgBox "Form5 is VISIBLE"
Else
MsgBox "Form5 is NOT VISIBLE"
End If
End Subنرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
