כותב |
|
L אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 17 December 2006 בשעה 02:30 | | IP רשוּם
|
|
|
|
טוב אז הבעיה שלי היא כזאת אני רוצה שלמשתמש יהיה זמן מוגבל שבו הוא יוכל
ללחוץ על המקש לדוגמא אם לא הבנתם אותי ניגד כשאני לוחץ W אז יש איזה
חללית שעולה אז אם עבר נגיד שניה אז הוא ימשיך קדימה זה צריך להיות כמו
איזה שהוא טיימר ל ReadKey() אבל לא מצאתי שום דבר לגבי זה כשאתה עושה
ReadKey() אתה חייב לחכות אז אם יש לך איזה שהיא פקודה שקוראת מקש ומחכה
שניה או דרך כל שהיא לגרום לכך להיות אפשרי אני אודה לכם מאד
או
אם אתם לא יודעים לפתור את זה אז יש לי שאלה אחרת שתפתור לי את הבעיה וזה
עם אתם יודעים איך לגרום לשתי לולאות while לרוץ בו זמנית ???(לולאות לא
סופיות שלא נגמרות לעולם) ז"א המצב הוא כזה שהתוכנית אומנם תעבוד אבל לא
כנדרש שרק אחת פועלת או ככשתיהם מחוברות ז"א אם אני מוריד את ה while של
כל אחד מהם ושם אותם ב while אחד גדול זה גם לא טוב חייבים אותם בנפרד
וששתיהם יקרו כאילו דומה למצב כזה רק כתוכנית מסובכת:
קוד:
while(ggg!=3) { Console.WriteLine("bbbbbb"); }
while(zzz!=222) { Console.WriteLine("ababab"); } ולא במקרה של התוכנית שלי לא יעזור אם אני יעשה:
while(zzz!=222) { Console.WriteLine("ababab Console.WriteLine("bbbbbb");"); } |
|
|
בבקשה עזרה!
|
חזרה לתחילת העמוד |
|
|
אורח אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 17 December 2006 בשעה 09:36 | | IP רשוּם
|
|
|
|
בשביל לגרום לשני קטעי קוד לרוץ בו זמנית [במקרה שלך שני לולאות while] עליך להשתמש ב threads. צריך פשוט להריץ לולאה אחת לא בתוכנית הרגילה אלה ב thread נוסף. אני לא יודע איך זה ב C#, אבל אני מניח שיש מחלקה מוכנה וקלה לשימוש חפש ב msdn.com את הערך c# thread class או משהו בסגנון..
|
חזרה לתחילת העמוד |
|
|
Fate פורומיסט על
הצטרף / הצטרפה: 25 October 2005
משתמש: מנותק/ת הודעות: 571
|
נשלח בתאריך: 17 December 2006 בשעה 11:08 | | IP רשוּם
|
|
|
|
או שאפשר להשתמש בkbhit()... או המקביל של זה בC# ...
שזה פונקציה שתמיד חוזרת מיד בלי לחכות לשום דבר ומחזירה True אם יש כפתור שמחכה להיקלט...
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 17 December 2006 בשעה 14:10 | | IP רשוּם
|
|
|
|
מקביל ב-C# Console.KeyAvailable
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
L אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 17 December 2006 בשעה 14:20 | | IP רשוּם
|
|
|
|
תודה רבה לכולכם אני אנסה את מה שאמרתם ועדין אני צריך עזרה אז אם מישהו שקורא את זה עכשיו יודע איך או שיש לו רעיון איך עושים את זה אז שירשום בבקשה בבקשה בבקשה
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 17 December 2006 בשעה 14:24 | | IP רשוּם
|
|
|
|
במה אתה צריך עזרה ?
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
L אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 17 December 2006 בשעה 16:22 | | IP רשוּם
|
|
|
|
אותו הדבר אני חושב שלא הסברתי את זה לכם טוב מה שאני מנסה לעשות זה שהמחשב לא יחכה שהמשתמש יכניס מקש כל שהוא וימשיך הלאה ז"א אומרת שאו שהמשתמש הכניס מקש חץ למעלה ומשהו מסויים קרה או שהוא לא לחץ ולא קרה כלום אבל המחשב לא יחכה לא שילחץ אני מקווה שהסברתי טוב
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 17 December 2006 בשעה 17:49 | | IP רשוּם
|
|
|
|
קוד:
using System; namespace
ConsoleApplication1 { /// <summary> /// this is an example of a game loopp, threading /// and console sounds for the underwar forum /// http://www.underwar.co.il/forum/ /// enjoy! /// </summary> class GameLoopExample { static char AvatarChar = (char)2; static void Main(string[] args) { Console.Clear(); Console.CursorVisible
= false; bool
exit = false; int
x = Console.WindowWidth / 2; int
y = Console.WindowHeight / 2; int
xSpeed = 1; int
ySpeed = 0; int
maxSpeed = 8; while
(!exit) { if
(Console.KeyAvailable) switch
(Console.ReadKey().Key) { case ConsoleKey.RightArrow: xSpeed = Math.Min(xSpeed + 1, maxSpeed); break; case ConsoleKey.LeftArrow: xSpeed = Math.Max(xSpeed - 1, -maxSpeed); break; case ConsoleKey.UpArrow: ySpeed = Math.Min(ySpeed + 1, maxSpeed); break; case ConsoleKey.DownArrow: ySpeed = Math.Max(ySpeed - 1, -maxSpeed); break; case ConsoleKey.Escape: exit = true; break; default: // declare a new thread that will play a sound in the
background System.Threading.Thread t = new
System.Threading.Thread(new System.Threading.ThreadStart(RockIt)); t.IsBackground = true; // is the application
closes the thread will be closed as well
t.Start(); break; } Console.CursorTop
= y; Console.CursorLeft
= x; Console.Write(' '); x = (x + xSpeed) % Console.WindowWidth; if
(x < 0) x = Console.WindowWidth - Math.Abs(x); y = (y - ySpeed) % Console.WindowHeight; if
(y < 0) y = Console.WindowHeight - Math.Abs(y); Console.CursorTop
= y; Console.CursorLeft
= x; Console.Write(AvatarChar); System.Threading.Thread.Sleep(50); } }
private
static void
RockIt() { for
(int i = 1000; i < 1500; i += 100) Console.Beep(i,
50); } } } |
|
|
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|
L אורח
הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין הודעות: 12647
|
נשלח בתאריך: 17 December 2006 בשעה 19:38 | | IP רשוּם
|
|
|
|
וואו תודה הצלת אותי אני כל היום מסתבך עם זה תודה תודה תודה תודה תודה תודה תודה !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
בהחלט יש שם את מה שהתכוונתי אליו תודה רבה רבה רבה רבה!!!!
|
חזרה לתחילת העמוד |
|
|
Fate פורומיסט על
הצטרף / הצטרפה: 25 October 2005
משתמש: מנותק/ת הודעות: 571
|
נשלח בתאריך: 18 December 2006 בשעה 00:46 | | IP רשוּם
|
|
|
|
שושן,
יש מצב אפשר לנצל את הזמן הפנוי שלך להחליף כמה פועלים שחורים שמייצרים נעליים? או במילים אחרות, לא מאמין על ההשקעה שלך
|
חזרה לתחילת העמוד |
|
|
shoshan מנהל האתר
הצטרף / הצטרפה: 16 July 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 4637
|
נשלח בתאריך: 18 December 2006 בשעה 11:24 | | IP רשוּם
|
|
|
|
חח...הקוד כבר היה קיים, פשוט הוספתי את ה-sound ואת ההערה למעלה
למה הוא היה קיים, זאת כבר שאלה אחרת...
__________________ עד מתי רשעים יעלוזו?
עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
|
חזרה לתחילת העמוד |
|
|