عرض رسالة في المكان المطلوب على الشاشة. التحكم في عرض الإخراج

أي كائن عميل لديه طريقة Give_game_news. يعرض الرسائل على الشاشة. كشفت التجربة أنه يمكن إخراج رسالة من أي كائن عميل على الإطلاق، حتى من قطعة نقانق (الثناء على عبقرية التصميم لشركة GSC! لماذا لا نقوم فقط بإنشاء وظيفة عالمية؟). ومع ذلك، وفقًا للتقاليد والحس السليم، سنستمر في استخدام كائن يتوافق مع GG لهذا الغرض، أي. الممثل.

ساكتور المحلي = الحياة (): الممثل () --احصل على كائن خادم الممثلالممثل المحلي =level.object_by_id(sactor.id) - باستخدام معرفه نحصل على كائن العميل الخاص بالممثلكاكتور:give_game_news( "الحرية لليربوع!\\ يايربوع جميع البلدان، اتحدوا!", -- سلسلة الرسائل، يمكن أن تكون متعددة الأسطر"واجهة المستخدم \\ui_npc_monster", - الملمس الذي تم أخذ الصورة الرمزية "للمرسل" منه Frect() :set(0 ,215 ,163 ,105 ) , - إحداثيات وأبعاد الصورة المقطوعة من النسيجالرياضيات .عشوائية (1000، 3000)، - بدء عرض الرسالة من اللحظة الحالية (بالملي ثانية) 5000 --مدة عرض الرسالة (بالميلي ثانية) )

يضيف. تعليقات على الحجج Give_game_news

اسم المادة هو اسم ملف dds بدون امتداد، وهو موجه بالنسبة للمجلد \ بيانات اللعبة \ القوام \في هذا التعبير:

Frect() :مجموعة(0,215,163,105)

0,215 - هذه هي إحداثيات الزاوية اليسرى العليا من الصورة المطلوبة؛
163,105 - أبعادها.
يمكن أن تكون الأبعاد والإحداثيات موجودة، ولكن سيتم تكبير الصورة الناتجة أو تصغيرها إلى 83x47. في هذه الحالة، صورة الجربوع من الملف ui_npc_monster.ddsتم تخفيضه. من الواضح أن معلمة وقت بدء العرض مطلوبة لإضافة بعض الحيوية إلى اللعبة. الحقيقة هي أن كود Lua يتلقى التحكم فقط في لحظات معينة، وفقًا لأحداث معينة. في مثل هذه اللحظة، يمكنك إنشاء مجموعة من الرسائل وتشتيتها بمرور الوقت باستخدام هذه المعلمة، وبالتالي إنشاء نوع من التقليد لنشاط الحياة في المستقبل القريب. أعتقد أنه يمكنك تقليد الحوار بنفس الطريقة. يتم ببساطة إنشاء مجموعة من الرسائل ويتم تعيين الإخراج لها على فترات زمنية قصيرة.

تعليمات

للانسحاب الى شاشة رسالة، في نظام التشغيل Windows يكفي كتابة برنامج نصي صغير في Visual Basic. إنشاء ملف نصي script.txt. لا يهم اسم وموقع الملف. افتح الملف في أي محرر نصوص. أدخل السلسلة: "MsgBox "نص الرسالة"" (بدون "الخطوط المتعرجة"، ولكن مع علامات الاقتباس "الشرطات"). احفظ الملف وأغلق محرر النصوص. قم بتغيير امتداد الملف إلى *.vbs. يجب أن يتغير الرمز. الآن ينظر نظام التشغيل إلى هذا الملف ليس كملف نصي، ولكن كمجموعة من الأوامر التي يتم تنفيذها بواسطة مترجم Visual Basic المدمج في Windows. هذا المكون موجود في جميع أنظمة التشغيل لهذه العائلة، بدءا من XP، والذي يسمح لك بتشغيل البرنامج النصي على أي جهاز كمبيوتر. عند التشغيل، سيتم إخراج هذا البرنامج النصي رسالةفى الشباك. يمكن أن يكون النص الموجود بين علامتي الاقتباس أي شيء.

البديل لبرنامج VBS النصي هو كتابة Java Script. تعد لغة Java أكثر تعقيدًا، ولكن يمكن تشغيل البرنامج النصي المكتوب بها ليس فقط على أنظمة تشغيل Windows، ولكن أيضًا على العديد من الأنظمة الأخرى. قم بإنشاء ملف نصي، وافتحه في المحرر وأدخل السطر "WScript.Echo("message text");". ليست هناك حاجة لإدخال علامات الاقتباس الخارجية، ولكن إذا لم تقم بإدخال علامات الاقتباس الداخلية (تلك التي تحتوي على النص)، فلن يعمل البرنامج النصي. قم بتغيير امتداد الملف إلى *.js. قم بتشغيل الملف للتنفيذ. ونتيجة لذلك، سيتم عرض نافذة، تمامًا كما هو الحال عند كتابة برنامج في Visual Basic.

هناك طريقة أخرى لإخراج الرسائل - باستخدام الأمر net send. الميزة والميزة المميزة لهذه الطريقة هي أن رسالةيمكن إرسالها إلى أي جهاز كمبيوتر على الشبكة المحلية. على لوحة المفاتيح، اضغط على مفاتيح win+r في نفس الوقت، وفي النافذة التي تفتح، أدخل السطر cmd واضغط على Enter. سيتم فتح نافذة إدخال الأوامر. اكتب فيه "net send اسم الكمبيوتر رسالة" (بدون علامتي الاقتباس) واضغط على Enter. سيتم عرض الكمبيوتر المحدد رسالةتقريبًا كما لو تم ذلك باستخدام برنامج نصي على الجهاز المحلي. يرجى ملاحظة أنه سيتضمن عنوان المرسل. بدلاً من اسم كمبيوتر مستلم الرسالة، يمكنك تحديد عنوان IP.

أبسط برنامج هو برنامج لعرض النص على الشاشة. في الأساس، يتعرف معظم الطلاب على لغات البرمجة منه. من السهل جدًا كتابتها بنفسك، الشيء الرئيسي هو فهم واجهة المترجم وأساسيات لغة البرمجة.

سوف تحتاج

  • - كيو تي-SDK.

تعليمات

قم بتنزيل أي برنامج مترجم على جهاز الكمبيوتر الخاص بك. من الأفضل استخدام البرامج المعروفة، مثل Nokia Qt SDK، على سبيل المثال، لأنه يحتوي على الواجهة الأكثر سهولة وسيكون أكثر ملاءمة للاستخدام من قبل المستخدمين المبتدئين. قم بتنزيله من الموقع الرسمي ولا تخلط بينه وبين Qt-Creator تحت أي ظرف من الظروف، ثم قم بتثبيت المترجم على جهاز الكمبيوتر الخاص بك وتشغيله.

اختر إنشاء مشروع يسمى Hello World. للقيام بذلك، انقر فوق "إنشاء مشروع" في الزاوية اليمنى السفلية وحدد نوع التطبيق في النافذة الجديدة التي تظهر. في لغات البرمجة، حدد C++. في النافذة التي تظهر بعد ذلك، أدخل الاسم helloworld. بعد ذلك، حدد الجهاز إذا لم يكن البرنامج قيد التطوير للاستخدام على جهاز كمبيوتر شخصي.

انقر فوق "التالي" مرتين، وحدد التكوين المطلوب في النافذة الأخيرة وانقر فوق "موافق". سترى حقل عمل، افتح المحرر، وحدد main على الجانب الأيسر من الشاشة، وأدخل الكلمات QLabel label (Hello Everyboby) أسفل السطر #endif. يمكنك استخدام أي عبارة تريد. ضع / في نهاية السطر .

استخدمت جميع برامج C++ التي قمت بإنشائها في الدرسين 1 و2 دفق الإخراج coutلعرض الرسائل على الشاشة. في هذا البرنامج التعليمي سوف تستخدم coutلإخراج الأحرف والأعداد الصحيحة مثل 1001 وأرقام الفاصلة العائمة مثل 0.12345. بنهاية هذا الدرس، ستكون قد أتقنت المفاهيم الأساسية التالية:

  • لطباعة الأحرف والأرقام على الشاشة، يمكنك استخدام دفق الإخراج cout.
  • في C++ يمكنك استخدامه مع coutأحرف خاصة لعلامة التبويب أو إخراج السطر الجديد وحتى لتشغيل الصوت على جهاز الكمبيوتر الخاص بك.
  • في لغة C++، يمكنك بسهولة عرض الأرقام بالتنسيق العشري أو الثماني (الأساس 8) أو الست عشري (الأساس 16).
  • باستخدام عبارات إعادة التوجيه في سطر أوامر نظام التشغيل، يمكنك إعادة توجيه رسائل الإخراج الخاصة ببرنامجك والتي يتم إرسالها إليه coutمن الشاشة إلى الملف أو الطابعة.
  • باستخدام تيار الإخراج ,يمكن لبرامجك إرسال رسائل إلى جهاز الخطأ القياسي، مما يلغي حاجة المستخدمين إلى إعادة توجيه الرسائل.
  • يمكنك تنسيق مخرجات برنامجك باستخدام المعدل setwداخل تيار الإخراج.

يستخدم كل برنامج C++ الذي تقوم بإنشائه تقريبًا coutلعرض الرسائل على الشاشة. ستتعلم في هذا البرنامج التعليمي كيفية استخدام som/.

استخدام cout لإخراج الأرقام

حتى الآن، استخدمت البرامج التي قمت بإنشائها som/ للإخراج سلاسل الأحرف(الحروف والأرقام بين علامات الاقتباس). ستتعلم الآن أن som/ يمكن استخدامه أيضًا لطباعة الأرقام. يعرض البرنامج التالي، 1001.CPP، الرقم 1001 على شاشتك:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< 1001;
}

تجميع وتشغيل هذا البرنامج. سيتم عرض الرقم 1001 على شاشتك كما هو موضح أدناه:

ج:\>1001

1001

كوت<< 2002;

بالإضافة إلى العرض الأعداد الصحيحة(أرقام بدون علامة عشرية)، سوم/يسمح أيضًا بعرض برامجك أرقام النقطة العائمة،على سبيل المثال 1.2345. يستخدم البرنامج التالي FLOATING.CPP som/ لطباعة الرقم 0.12345 على الشاشة:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< 0.12345;
}

كما كان من قبل، تجميع وتشغيل هذا البرنامج. سيظهر الإخراج التالي على شاشتك:

ج:\>عائمة

0.12345

إخراج عدة قيم في نفس الوقت

كما تعلمون، علامة أقل من ضعف عملية إدراج(تقوم هذه العملية بإدراج الأحرف في دفق الإخراج للعرض). باستخدام coutيمكنك استخدام عمليات إدراج متعددة ضمن عبارة واحدة. على سبيل المثال، يستخدم البرنامج التالي، 1001TOO.CPP، هذه العملية أربع مرات لعرض الرقم 1001 على شاشتك:

#يشمل

الفراغ الرئيسي (باطل)

(
cout<< 1 << 0 << 0 << 1;
}

عند تجميع هذا البرنامج وتشغيله، سيظهر ما يلي على شاشتك:

ج:\>1001TOO

1001

في كل مرة تتم فيها مواجهة عملية إدراج في C++، تتم إضافة الأرقام أو الأحرف ببساطة إلى تلك الموجودة حاليًا في دفق الإخراج. البرنامج التالي SHOW1001.CPP باستخدام coutطباعة سلسلة أحرف ورقم:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "Мое любимое число равно " << 1001;
}

لاحظ أن المسافة التي تلي الكلمة يساوي(داخل علامتي الاقتباس)، يعمل على فصل الرقم 1001 عن هذه الكلمة. بدون مسافة، يتم دمج الرقم مع الكلمة التالية (تساوي 1001). وبالمثل، يعرض البرنامج التالي 1001MID.CPP الرقم 1001 في منتصف سلسلة الأحرف:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "رقم "<< 1001 << " мне очень нравится";
}

كما في السابق، انتبه إلى وضع المسافات قبل الرقم 1001 وبعده.

أخيرًا، يجمع برنامج MIXMATCH.CPP التالي بين السلاسل والأحرف والأعداد الصحيحة والعوامات داخل نفس دفق الإخراج:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "B " << 20 << " سنوات كان راتبي "<< 493.34 << endl;
}

عندما تقوم بتجميع هذا البرنامج وتشغيله، سيظهر الإخراج التالي على شاشتك:

ج:\>ميكسماتش

عندما كان عمري 20 عامًا كان راتبي 493.34

استخدام أحرف الإخراج الخاصة

جميع البرامج التي قمت بإنشائها حتى الآن قد عرضت مخرجاتها كسطر واحد. ومع ذلك، فإن معظم البرامج التي تقوم بإنشائها لاحقًا ستعرض عدة أسطر من المخرجات. على سبيل المثال، لنفترض أنك تكتب برنامجًا يقوم بطباعة العناوين على الشاشة. ربما تريد أن تظهر العناوين على هيئة أسطر متعددة.

إذا كنت بحاجة إلى نقل المؤشر إلى بداية السطر التالي، يمكنك وضعه حرف السطر الجديد(\n) إلى دفق الإخراج. في C++، يتم منحك طريقتين مختلفتين لإنشاء سطر جديد. أولاً، يمكنك وضع أحرف \n داخل سلسلة أحرف. على سبيل المثال، يعرض البرنامج التالي TWOLINES.CPP مخرجاته كسطرين، باستخدام حرف السطر الجديد:

#يشمل

الفراغ الرئيسي (باطل)
{
cout<< "Это строка один\nЭто строка два";
}

عند تجميع هذا البرنامج وتشغيله، سينتج حرف السطر الجديد سطرين من الإخراج، كما هو موضح أدناه:

ج:\>خطين

هذا هو السطر الأول

هذا هو السطر الثاني

إذا لم تكن تقوم بإخراج سلسلة أحرف، فيمكنك وضع حرف السطر الجديد داخل علامات الاقتباس المفردة. على سبيل المثال، يقوم البرنامج التالي NEWLINES.CPP بطباعة الأرقام 1 و0 و0 و1، كل منها على السطر الخاص بها:

#يشمل

الفراغ الرئيسي (باطل)
{
cout<< 1 << "\ن"<< 0 << "\ن"<< 0 << "\n" << 1;
}

بالإضافة إلى استخدام حرف السطر الجديد لدفع المؤشر إلى بداية السطر التالي، يمكن لبرامجك استخدام الحرف endl(نهاية الخط). يوضح البرنامج التالي ENDL.CPP الاستخدام endlلتحريك المؤشر إلى بداية السطر الجديد:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "А теперь..." << endl
<< "Учимся программировать на языке C++";
}

كما كان من قبل، عند تجميع هذا البرنامج وتشغيله، سيتم عرض مخرجات البرنامج على الشاشة في شكل سطرين:

ج:\>ENDL

و الأن

تعلم البرمجة بلغة C++

وأخيرًا، يقوم البرنامج التالي ADDRESS.CPP بطباعة عنوان الناشر "Jamsa Press" في بضعة أسطر:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "Jamsa Press" << endl;
cout<< "2975 South Rainbow, Suite I" << endl;
cout<< "Las Vegas, NV 89102" << endl;
}

شخصيات خاصة أخرى

بالإضافة إلى حرف السطر الجديد، الذي يسمح لبرامجك بتقديم المؤشر إلى بداية سطر جديد، يمكنك استخدام الأحرف الخاصة المدرجة في الجدول. 3.1.

الجدول 3.1. أحرف خاصة للاستخدام مع cout.

رمز

غاية

رمز الإشارة (أو الجرس).

رمز العودة

رمز تغذية الصفحة

حرف السطر الجديد

عودة السطر (وليس تغذية السطر)

حرف علامة التبويب الأفقية

حرف علامة التبويب العمودية

حرف الخط المائل العكسي

علامة استفهام

ونقلت واحدة

التنصيص

حرف فارغ

\000

القيمة الثمانية، على سبيل المثال \007

\xhhh

القيمة السداسية العشرية، مثل \xFFFF

تعليق:عند استخدام الأحرف الخاصة المدرجة في الجدول. 3.1، يجب عليك وضعها داخل علامات اقتباس مفردة إذا كنت تستخدم هذه الأحرف بمفردها، مثل "\n"، أو داخل علامات اقتباس مزدوجة إذا كنت تستخدمها داخل سلسلة، مثل "Hi\nMup!".

يستخدم البرنامج التالي، SPECIAL.CPP، أحرف الإشارة الخاصة (\a) وعلامة التبويب (\t) لإخراج الصوت إلى مكبر الصوت المدمج في الكمبيوتر ثم يطبع الكلمات خاتم خاتم خاتممفصولة بعلامة التبويب:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "3вонок\a\tЗвонок\a\tЗвонок\a";
}

إخراج القيم الثمانية والست عشرية

البرامج المقدمة في هذا الدرس حتى الآن لها أرقام مخرجات في شكل عشري. اعتمادًا على الغرض من برامجك، قد تحتاج إلى إخراج الأرقام بالنظام الثماني أو السداسي العشري. للقيام بذلك، يمكنك وضع المعدلات ديسمبر, أكتوبرو عرافةداخل تيار الإخراج. يستخدم البرنامج التالي OSTNEX.CPP هذه المعدلات لإخراج القيم بالنظام العشري والثماني والست عشري:

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "Восьмеричный: " << oct << 10 << " " << 20 << endl;
cout<< "Шестнадцатеричный: " << hex << 10 << " " << 20 << endl;
cout<< "Десятичный: " << dec << 10 << " " << 20 << endl;
}

عندما تقوم بتجميع هذا البرنامج وتشغيله، سيظهر الإخراج التالي على شاشتك:

ج:\>أوكتيكس

ثماني: 12 24

سداسي عشري: 14

العشري: 10 20

ملحوظة:عند استخدام أحد المعدلات لتحديد الإخراج الثماني أو السداسي العشري أو العشري، سيظل تحديدك ساري المفعول حتى ينتهي البرنامج أو تستخدم معدلًا آخر.

إخراج الأخطاء إلى جهاز قياسي

كما تعلم بالفعل، باستخدام coutيمكنك إعادة توجيه مخرجات البرنامج إلى جهاز أو ملف باستخدام عوامل إعادة توجيه المخرجات في نظام التشغيل. ومع ذلك، إذا واجهت البرامج الخاصة بك خطأ، فمن المحتمل أنك لا تريد إعادة توجيه رسالة الخطأ من الشاشة. يمكن أن تؤدي إعادة توجيه رسائل الخطأ إلى ملف إلى إخفاء حقيقة حدوث خطأ من المستخدم.

إذا كان برنامجك يحتاج إلى طباعة رسالة خطأ، فيجب عليك استخدام دفق الإخراج cerr.روابط سي++ cerrمع جهاز خطأ نظام التشغيل القياسي. يستخدم البرنامج التالي CERR.CPP دفق الإخراج cerrلعرض رسالة على الشاشة "تظهر هذه الرسالة دائمًا":

#يشمل

الفراغ الرئيسي (باطل)

{
cerr<< "Это сообщение появляется всегда";
}

تجميع وتشغيل هذا البرنامج. بعد ذلك، حاول إعادة توجيه مخرجات البرنامج إلى ملف باستخدام عامل إعادة توجيه المخرجات:

C:\>CERR>FILENAME.EXT

نظرًا لأن نظام التشغيل لن يسمح لبرامجك بإعادة توجيه الإخراج المكتوب إلى جهاز الخطأ القياسي، فستظهر رسالة على شاشتك.

التحكم في عرض الإخراج

عرضت العديد من البرامج السابقة أرقامًا على الشاشة. للتأكد من عرض هذه الأرقام بشكل صحيح (مع تباعد مناسب)، قامت البرامج بتضمين مسافات قبل الأرقام وبعدها. عند الانسحاب إلى coutأو cerrيمكن لبرامجك تحديد عرض الإخراج لكل رقم باستخدام المُعدِّل setw(ضبط العرض). باستخدام setwتحدد البرامج الحد الأدنى لعدد الأحرف التي يمكن أن يشغلها الرقم. على سبيل المثال، يستخدم البرنامج التالي SETW.CPP المعدل setwلتحديد العرض 3 و4 و5 و6 للرقم 1001. لاستخدام المعدل ,يجب أن يتضمن برنامجك ملف رأس iomanip.h:

#يشمل

#يشمل

الفراغ الرئيسي (باطل)

{
cout<< "Мое любимое число равно" << setw(3) << 1001 << endl;
cout<< "Мое любимое число равно" << setw(4) << 1001 << endl;
cout<< "Мое любимое число равно" << setw(5) << 1001 << endl;
cout<< "Мое любимое число равно" << setw(6) << 1001 << endl;
}

عندما تقوم بتجميع هذا البرنامج وتشغيله، سيظهر الإخراج التالي على شاشتك:

ج:\>الإعدادات

رقمي المفضل هو 1001

رقمي المفضل هو 1001

إذا قمت بتحديد العرض باستخدام ,تشير الحد الأدنىعدد مواضع الأحرف التي يشغلها الرقم. في البرنامج السابق المعدل سيتو(3)تم تحديد ثلاثة أحرف على الأقل. ومع ذلك، بما أن الرقم 1001 يتطلب أكثر من ثلاثة أحرف، coutاستخدمت الكمية المطلوبة فعليًا، والتي كانت في هذه الحالة أربعة. وتجدر الإشارة إلى أنه عند استخدام setwلتحديد العرض، يكون العرض المحدد صالحًا لإخراج رقم واحد فقط. إذا كنت بحاجة إلى تحديد العرض لأرقام متعددة، فيجب عليك استخدام setwمرارا وتكرارا.

تعليق: يستخدم البرنامج السابق ملف الرأس IOMANIP.H. قد تحتاج إلى طباعة محتويات هذا الملف وفحصها الآن. كما هو الحال مع ملف الرأس IOSTREAM.H، ستجد هذا الملف داخل الدليل الفرعي INCLUDE الخاص بدليل ملفات المترجم الخاص بك.

ما تحتاج إلى معرفته

تعلمت في هذا البرنامج التعليمي عدة طرق للاستخدام coutلعرض الإخراج على الشاشة. سيتم استخدام كافة البرامج التي تقوم بإنشائها خلال بقية هذا الكتاب coutلعرض الإخراج. ستتعلم في الدرس الرابع كيفية استخدام المتغيرات داخل برامجك لتخزين القيم التي يمكن أن تتغير أثناء تشغيل البرنامج. ومع ذلك، قبل دراسة الدرس الرابع، تأكد من أنك أتقنت المفاهيم الأساسية التالية:

    1. تيار الإخراج coutيسمح لك بإخراج الأحرف والأرقام.
    2. باستخدام أحرف خاصة ضمن دفق الإخراج، يمكن لبرنامجك الإشارة إلى السطر الجديد وعلامة التبويب والميزات الخاصة الأخرى.
    3. لتقديم المؤشر إلى بداية السطر التالي، يمكن للبرامج إنشاء سطر جديد باستخدام الحرف \n أو المُعدِّل endl.
    4. الصفات التعريفية ديسمبر، أكتوبرو عرافةالسماح للبرامج بإخراج القيم بالنظام العشري والثماني والست عشري.
    5. باستخدام تيار الإخراج ,يمكن للبرامج كتابة رسائل إلى جهاز الخطأ القياسي لنظام التشغيل.
    6. باستخدام المعدل setwيمكن لبرامجك التحكم في عرض مخرجات الأرقام.