View Full Version : ين کنترل hWnd دارد?
  
ASedJavad
سه شنبه 21 مهر 1388, 00:43 صبح
سلام
توي پرانتز رو چطوري بايد پر کنم؟ :
Dim i As Control
For Each i In Me
 if ( ميباشد hWnd دارايi) then
 ...
 End If
Next i
در ضمن از On Error هم نميخوام استفاده کنم.
mpmsoft
سه شنبه 21 مهر 1388, 12:01 عصر
هیچ راهی جز استفاده از On error نداره
شما می تونید بر اساس کد خطای 438 چک کنید
ASedJavad
سه شنبه 21 مهر 1388, 16:28 عصر
ممنون
ولي من On Error گذاشتم، اما اين دستور خطا رو رد نمي کنه.
نمي دونم چرا
يعني قبل از  if يه دستور On Error گذاشتم ولي باز به دستور i.hwnd که ميرسه خطا ميده
r0ot$harp
سه شنبه 21 مهر 1388, 16:56 عصر
سلام
توي پرانتز رو چطوري بايد پر کنم؟ :
Dim i As Control
For Each i In Me
 if ( ميباشد hWnd دارايi) then
 ...
 End If
Next i
در ضمن از On Error هم نميخوام استفاده کنم.
دوست عزیز شما می خواین چی کار کنید ؟
باتشکر احسان(Sanaz13x)
vbhamed
سه شنبه 21 مهر 1388, 17:20 عصر
سلام
من كه اين كد رو با يك عدد دكمه و يك Label  تست كردم مشكل نداشت
Private Sub Form_Load()
    On Error Resume Next
    Dim i As Control
    For Each i In Me
        Dim x&
        
        x = -1
        x = i.hWnd
        
        If x > 0 Then Print "Hwnd darad" Else Print "Hwnd Nadarad"
    Next
End Sub
ASedJavad
چهارشنبه 22 مهر 1388, 00:39 صبح
بي زحمت اين برنامه رو يه چک بکنيد
تو کامپيوتر من که ارور ميده
38332
vbhamed
چهارشنبه 22 مهر 1388, 03:08 صبح
سلام
وقتي خطا رو با دستور On Error به دام مي ندازيد بايد توجه كنيد كه توي خود روال كنترل خطا نبايد خطايي اتفاق بيفته
شما تو برنامتون اشاره كرديد در صورت خطا به خط A برو، اما بعد از اين تكليف رو مشخص نكردين، بنابراين برنامه دوباره به خط خطا بر مي گرده و اينبار ديگه پيام خطا مي ده
اينم برنامه اصلاح شده
Private Sub Command1_Click()
     Dim i As Control
    On Error GoTo a
     For Each i In UserControl
         Dim x&
        x = -1
        x = i.hWnd
        If x > 0 Then
            Print "Hwnd darad"
        Else
            Print "Hwnd Nadarad"
        End If
 a:
Resume Next
     Next
 End Sub
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.