פורסם 2008 במרץ 1517 שנים שלום רב !!אני כותב פרויקט ב-VB ויש לי בעיה של שגיאה בזמן ריצה שרשום בה :run-time error '9':subscript out of rangeהקוד בו מתבצעת השגיאה הוא :Private Sub drawWithHiding() Dim j%, K%, L% Dim arr(1 To moneWalls) As recordType For j = 1 To moneWalls arr(j).i = j arr(j).Z = walls(j).V(walls(j).vertices, 3) Next j'========= מיון בועות ===========For K = 1 To moneWalls - 1 For L = K + 1 To moneWalls If arr(K).Z > arr(L).Z Then swap arr, K, L End If Next LNext K'============סיום מיון בועות ותחילת ציור הגופים==========Form2.ClsDrawShadows Form2, table, Peres, light, vbBlueFor K = 1 To moneWalls If arr(K).i >= 6 And arr(K).i <= 10 Then 'drew green walls If isHit((arr(K).i) - 5) = False Then DrawShadows Form2, walls(arr(K).i), Peres, light, vbGreen End If End If If arr(K).i >= 1 And arr(K).i <= 5 Then 'drew red walls DrawShadows Form2, walls(arr(K).i), Peres, light, vbRed End If If arr(K).i = 11 Then 'drew ball DrawShadows Form2, walls(arr(K).i), Peres, light, vbYellow End IfNext KEnd Subוהשורה בה מתבצעת השגיאה היא :arr(j).Z = walls(j).V(walls(j).vertices, 3)מישהו יודע מה התקלה וכיצד פותרים אותה ?
פורסם 2008 במרץ 1517 שנים subscript out of range = חרגת מגבולות המערך. תבדוק שאתה לא חורג מהגבולות של arr ושל walls.
פורסם 2008 במרץ 1517 שנים מחבר לא חריגתי מהגבולות גודל שני המערכים הוא moneWalls כאשר Const moneWalls = 11..איך פותרים את הבעיה הזאת..זה דחוווףףף..
פורסם 2008 במרץ 1717 שנים מחבר ותכתוב כאן את ההגדרה המדוייקת של walls.ההגדרה של walls היא :walls(1 to moneWalls ) as gufTypeהערה : gufType הוא סוג המשתנה (שנוצער על ידי) לגוף תלת-מימדי..
פורסם 2008 במרץ 1717 שנים מחבר וההגדרה שלו היא...?Public Type GufType V(1 To Max_Vertices, 1 To 3) As Single '' קדקדים P(1 To Max_Faces, 1 To Max_Vertices_Per_Face + 2) As Integer ' קירות ועוד vertices As Long ' כמה קדקדים בפועל faces As Integer ' כמה קירות בפועלEnd TypeConst Max_Vertices = 84 ' מספר מקסימלי של קדקדים בגוףConst Max_Faces = 94
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.