נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: [C#]עזרה בבקשה דחוף בקריאת מקשים, לא פשוט

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
L
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 17 December 2006 בשעה 02:30 | IP רשוּם
ציטוט L

טוב אז הבעיה שלי היא כזאת אני רוצה שלמשתמש יהיה זמן מוגבל שבו הוא יוכל ללחוץ על המקש לדוגמא אם לא הבנתם אותי ניגד כשאני לוחץ 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");");
}


בבקשה עזרה!
חזרה לתחילת העמוד הצג את כרטיס החבר של L חפש הודעות אחרות של L בקר בדף הבית של L
 
אורח
אורח
אורח


הצטרף / הצטרפה: 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 רשוּם
ציטוט Fate

או שאפשר להשתמש בkbhit()...
או המקביל של זה בC# ...

שזה פונקציה שתמיד חוזרת מיד בלי לחכות לשום דבר ומחזירה True אם יש כפתור שמחכה להיקלט...

חזרה לתחילת העמוד הצג את כרטיס החבר של Fate חפש הודעות אחרות של Fate
 
shoshan
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 16 July 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 4637
נשלח בתאריך: 17 December 2006 בשעה 14:10 | IP רשוּם
ציטוט shoshan

מקביל ב-C#
Console.KeyAvailable


__________________
עד מתי רשעים יעלוזו?

עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
חזרה לתחילת העמוד הצג את כרטיס החבר של shoshan חפש הודעות אחרות של shoshan בקר בדף הבית של shoshan
 
L
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 17 December 2006 בשעה 14:20 | IP רשוּם
ציטוט L

תודה רבה לכולכם אני אנסה את מה שאמרתם ועדין אני צריך עזרה אז אם מישהו שקורא את זה עכשיו יודע איך או שיש לו רעיון איך עושים את זה אז שירשום בבקשה בבקשה בבקשה  
חזרה לתחילת העמוד הצג את כרטיס החבר של L חפש הודעות אחרות של L בקר בדף הבית של L
 
shoshan
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 16 July 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 4637
נשלח בתאריך: 17 December 2006 בשעה 14:24 | IP רשוּם
ציטוט shoshan

במה אתה צריך עזרה ?

__________________
עד מתי רשעים יעלוזו?

עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
חזרה לתחילת העמוד הצג את כרטיס החבר של shoshan חפש הודעות אחרות של shoshan בקר בדף הבית של shoshan
 
L
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 17 December 2006 בשעה 16:22 | IP רשוּם
ציטוט L

shoshan כתב:
במה אתה צריך עזרה ?

אותו הדבר אני חושב שלא הסברתי את זה לכם טוב
מה שאני מנסה לעשות זה שהמחשב לא יחכה שהמשתמש יכניס מקש כל שהוא וימשיך הלאה ז"א אומרת שאו שהמשתמש הכניס מקש חץ למעלה ומשהו מסויים קרה או שהוא לא לחץ ולא קרה כלום אבל המחשב לא יחכה לא שילחץ אני מקווה שהסברתי טוב
חזרה לתחילת העמוד הצג את כרטיס החבר של L חפש הודעות אחרות של L בקר בדף הבית של L
 
shoshan
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 16 July 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 4637
נשלח בתאריך: 17 December 2006 בשעה 17:49 | IP רשוּם
ציטוט shoshan

קוד:
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);
        }
    }
}



__________________
עד מתי רשעים יעלוזו?

עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
חזרה לתחילת העמוד הצג את כרטיס החבר של shoshan חפש הודעות אחרות של shoshan בקר בדף הבית של shoshan
 
L
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 17 December 2006 בשעה 19:38 | IP רשוּם
ציטוט L

וואו תודה הצלת אותי אני כל היום מסתבך עם זה תודה תודה תודה תודה תודה תודה תודה !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!



בהחלט יש שם את מה שהתכוונתי אליו תודה רבה רבה רבה רבה!!!!
חזרה לתחילת העמוד הצג את כרטיס החבר של L חפש הודעות אחרות של L בקר בדף הבית של L
 
Fate
פורומיסט על
פורומיסט על
סמל אישי

הצטרף / הצטרפה: 25 October 2005
משתמש: מנותק/ת
הודעות: 571
נשלח בתאריך: 18 December 2006 בשעה 00:46 | IP רשוּם
ציטוט Fate

שושן,

יש מצב אפשר לנצל את הזמן הפנוי שלך להחליף כמה פועלים שחורים שמייצרים נעליים?
או במילים אחרות, לא מאמין על ההשקעה שלך
חזרה לתחילת העמוד הצג את כרטיס החבר של Fate חפש הודעות אחרות של Fate
 
shoshan
מנהל האתר
מנהל האתר
סמל אישי

הצטרף / הצטרפה: 16 July 2005
מדינה: Israel
משתמש: מנותק/ת
הודעות: 4637
נשלח בתאריך: 18 December 2006 בשעה 11:24 | IP רשוּם
ציטוט shoshan

חח...הקוד כבר היה קיים, פשוט הוספתי את ה-sound ואת ההערה למעלה

למה הוא היה קיים, זאת כבר שאלה אחרת...


__________________
עד מתי רשעים יעלוזו?

עַל כֵּן אֶמְאַס וְנִחַמְתִּי עַל עָפָר וָאֵפֶר.
חזרה לתחילת העמוד הצג את כרטיס החבר של shoshan חפש הודעות אחרות של shoshan בקר בדף הבית של shoshan
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

קפיצה לפורום
אינך יכול/ה לשלוח נושאים חדשים בפורום זה
אינך יכול/ה להגיב לנושאים בפורום זה
אינך יכול/ה למחוק את הודעותיך ותגוביך בפורום זה
אינך יכול/ה לערוך את הודעותיך ותגובותיך בפורום זה
אינך יכול/ה לצור סקרים בפורום זה
אינך יכול/ה להצביע בסקרים בפורום זה