الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تغيير لون سطر الكتابة في نافذة الدوس سطر سطر

بدأه فهدالشلوي في 15 ديسمبر 2007 · 6 رد · 5,199 مشاهدة · في قسم المواضيع الهامة في قسم السي /سي++
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

هذا الكود لتغيير لون النص في الكنسل تستطيع تغير لون كل سطر فقط اضف قبل السطرالى تريده تغييره

[background=black]
#include <stdlib.h>
#include <windows.h>
#include <iostream>
using namespace std;
HANDLE hcon = GetStdHandle(STD_OUTPUT_HANDLE);
#define  yellow SetConsoleTextAttribute(hcon,14/*جرب غير الرقمين*/);
#define  white SetConsoleTextAttribute(hcon,15);
#define  blue SetConsoleTextAttribute(hcon,61);
int main()
{
 yellow;
    cout<<"Arab Team"<<endl;
 white;
    cout<<"Arab Team"<<endl;
 blue;
    cout<<"Arab Team"<<endl;
    return 0;
}
[/background]
tvquran_6.gif

#2

السلام عليكم ,,

مشاركتك القيمة تثري المنتدى أخي العزيز :rolleyes:

بالنسبة للموضوع الذي طرحته, فقد كان لي محاولات سابقة فيه, و لكني لم أكمل المشوار,

و اسمحلي أن أعلق على الكود لمن يريد الاستفادة ,

#include <windows.h>
#include <iostream>
using namespace std;

عرفنا المكتبات التي يحتاجها البرنامج , و مكتبة الـ windows تحتوي على كل الـ Structures و الـ Functions للتعامل مع الـ Console, لأن الذي تعمل عليه, ليس نظام تشغيل dos و لكنه win32 console, و هناك الكثير من الـ API functions التي تمكننا التعامل مع الـ Console, و لكن بشكل عام الـ Console يتكون من buffer عبارة عن مصفوفة char و كل حرف في هذه المصفوفة يقابله في مصفوفة أخرى خصائص الحرف من حيث اللون و لون الخلفية..

استعمل الأخ arabi دالة SetConsoleTextAttribute لإضافة الخصائص المطلوبة على الحروف..

#define yellow SetConsoleTextAttribute(hcon,14/*جرب غير الرقمين*/);
#define white SetConsoleTextAttribute(hcon,15);
#define blue SetConsoleTextAttribute(hcon,61);

هنا قام الأخ arabi بتعريف ثلاثة Macros كل ماكرو يمكننا من تغيير لون النص إلى الأصفر و الأبيض و الأزرق..

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

الحقيقة أن المصادر حول هذا الموضوع ليست كثيرة, و لكن من أفضل ما رأيت حول هذا الموضوع,

المقالة التالية على codeproject و التي تشرح كيفية تغيير لون النص و الخلفية لكل حرف إذا أردت,, و يقوم بذلك المبرمج على شكل manipulators للـ IO Stream ,,

الطريقة جميلة جداُ و عملية,

المقال من هنا :

http://www.codeproject.com/KB/cpp/AddColorConsole.aspx

و إذا لم يكن لديك حساب في code project حمل كود المقالة من هنا :

visual studio

ConColors_VC6_Demo.zip

mingw

ConColors_MinGW_Demo.zip

source only

Console_h_src.zip

إضافة على ذلك, هناك مشروع واحد على sf.net يمكن القول عنه بأنه رائع, المشروع يحاول تحويل الـ Console إلى شاشة رائعة تفتح النفس :clapping: ,, هذه صورة للـ Console 2

post-89451-1197692937_thumb.png

و من هنا يمكنك تحميل الكود مع البرنامج جاهز للاستخدام في ملف مضغوط.

Console2_src.rar

تحياتي,,

#3

بارك الله فيك اخي خالد.

واشكرك على توضيحاتك وتعليقات المهمه.

الحقيقه لي ايام احاول في الكتابه في الكنسل بالعربي وابحث الخواص ودوال API لعلي اجد طريقه وان شاء الله اصل اليها.

وجدت امر في الكنسل GrafTabl مهم ويحول من لغه الى لغه .

ويبدوا ان المشكله فقط مشكله خط.

وعند قراءة خصائص الكنسل اجد انه يحوي خطين فقط.

tvquran_6.gif

#4

الصراحة موضوع رائع

مشكور يا غالى على الموضوع الاكثر من رائع

وننتظر المزيد :):)

#5

شكر لك هارد ونتمنى حضورك معنا دائما.

tvquran_6.gif

#6

مكتبه conio.h تفي بالغرض ..

Be Happy

^_^

#7

لكن الكمبايلرات الحديثه لاتوجد بها الدالة textcolor .

tvquran_6.gif

مواضيع مشابهة