בעיה לא קטנה

BlueWhite

New member
בעיה לא קטנה

במשחק שאני יוצר יש נתונים על כל מיני דברים, שמכניסים אותם דרך Editor וצריך להכניס אותם ל-Array, הבעיה היתה שכמות הנתונים לא תמיד אותו דבר, הדבר הזה הצלחתי לפתור על ידי לקיחת מספר הנתונים לפני קביעת ה-Array. עכשיו הבעיה היא שאני רוצה להוסיף גם נתונים למערך תוך כדי משחק, מה שבלתי אפשרי בגלל שצריך לקבוע מהתחלה את גודל ה-Array. יש לי רעיון שלא הצליח, אבל קודם אני רוצה לשמוע אולי למישהו יש פתרון. מקווה שיש אחד !
 

MaD-d0g

New member
ככה אתה מגדיר?

ככה אתה מגדיר את המערך? dim NumOfPlayers as integer NumOfPlayers =inputbox$("Enter the number of players") Dim P(NumOfplayers) as integer
 

BlueWhite

New member
Like this

Public ProgramsNames(9) אבל אני לא יודע איך מה שאמרת יעזור לעלות את הגודל של ה-Array כשהתוכנה פועלת.
 

MaD-d0g

New member
אוקי, אז ככה

אוקי, אני מבין שאתה מגדיר את המערך בתוך מודול אז זה מה שאתה צריך לעשות הצהרה: Public ArrayName() as String (כמובן שהטיפוס לי חייב להיות מחרוזת) בתוכנית: Redim Preserve ArrayName(5) as String מגדיל את המערך ל5 תאים ואם אתה רוצה להגדיל שוב, אז.. Redim Preserve ArrayName(9) as String שוב, המערך גדל ל 4 תאים, וכל המידע שנשמר ה 5 הקודמים לא נפגם הערה, במקרה שתקטין את המערך ל 3 תאים ושוב תגדיל ל 9, כל התוכן של התאים בין 4 ל 9 לא יחזור יעלם תמידית.. עזרתי?
 

BlueWhite

New member
חוץ מבעיה "קטנה" אחת

Array already dimensioned בעיה שנוצרה גם שניסיתי את הרעיון שלי. לעתיק את ה-Array לתוך-Array אחר, למחוק את הראשון וליצור אותו שוב עם מספר גדול יותר.
 

MaD-d0g

New member
לאלאלאלא..... למה לסבך????

איך נראית ההגדרה שלך של המערך?
 

BlueWhite

New member
...

Public OptionMusicFiles(34) המודל ואחר כך בחלון אחר ReDim Preserve OptionMusicFiles(22) ניסיתי גם עם להוסיף As Integer
 

MaD-d0g

New member
אז ככה..

Public OptionMusicFiles() as string תחליף את מה שכתבת במה שאני כתבתי
 

MaD-d0g

New member
מוזר..

אני עובד ככה כל הזמן מודול public Arr() as string פורום ReDim Preserve Arr(5) as string תפתח פרויקט חדש ותנסה את זה
 

BlueWhite

New member
מותר

לא שמתי לב שאתה רשמת Public OptionMusicFiles() אני רשמתי Public OptionMusicFiles(55)
 
למעלה