Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/35: Рейтинг темы: голосов - 35, средняя оценка - 4.80
2 / 2 / 0
Регистрация: 14.02.2009
Сообщений: 21
1

Вывод текста любым цветом в Microsoft Visual Studio 2005 (Win32 Console application)

15.03.2009, 22:23. Показов 7202. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
подскажите пожалуйста существует ли способ выводить текст любым цветом в
Microsoft Visual Studio 2005 (Win32 Console application)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.03.2009, 22:23
Ответы с готовыми решениями:

Как писать по-русски в Visual C++ (win32 console application)
Подскажите, пожалуйста, как сделать, чтобы вместо каракуль были русские символы в VC++ (win32...

Не создается новый проект win32 console application Visual в C++ 2010 Professional
Проблема в следующем. С какого-то момента Visual C++ 2010 Professional перестал создавать новые...

Как с сайта Microsoft скачать Microsoft Visual Studio 2005 Express Edition?
На сайте Microsoft вроде бы можно скачать Microsoft Visual Studio 2005 Express Edition, но отдаётся...

microsoft visual studio 2005
есть ли в природе документация по microsoft visual studio 2005 на русском языке?

6
CEO
Эксперт С++
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
16.03.2009, 01:09 2
SetTextColor(HDC,RCB(r,g,b)); где HDC - дескриптор устройства
1
Заблокирован
16.03.2009, 11:32 3
Конечно можно, если найти дескриптор консольного окошка. Вот кидаю свою наработку в этой области)))
Вложения
Тип файла: rar shema_1_console.rar (5.7 Кб, 219 просмотров)
Тип файла: rar shema_1.exe.rar (3.5 Кб, 117 просмотров)
1
2 / 2 / 0
Регистрация: 14.02.2009
Сообщений: 21
16.03.2009, 23:41  [ТС] 4
спасибо))



я прописал


#include <afxwin.h>
#define GRN RGB(0,255,0)
....
SetTextColor(HDC(),GRN);


по другому выдает ошибку , но так текст не цветной (((
...я понял дескриптор не так прописываю надо hDC , все перепробовал но что-то никак
0
CEO
Эксперт С++
2258 / 1248 / 57
Регистрация: 16.03.2009
Сообщений: 3,588
17.03.2009, 00:46 5
...я понял дескриптор не так прописываю надо hDC
Разница только в том как вы огласите переменную (тип сам пишется как HDC).

Если цвет не меняется - может неправильно получен дескриптор.
0
Заблокирован
17.03.2009, 10:51 6
Пацыки да чё вы флудите за цвет текста отвечает вот этот кусок кода
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void CleanScreen()
{
    HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);
    CONSOLE_SCREEN_BUFFER_INFO SCRN_INFO;
    GetConsoleScreenBufferInfo(hOutput, &SCRN_INFO);
    
    COORD POS;
    POS.X = 0;
    POS.Y = 0;
    FillConsoleOutputCharacter(hOutput, ' ',
    SCRN_INFO.dwSize.X*SCRN_INFO.dwSize.Y, POS, NULL);
    FillConsoleOutputAttribute(hOutput, 
        FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE /*цвет*/, 
        SCRN_INFO.dwSize.X*SCRN_INFO.dwSize.Y,POS,NULL);
 
    SetConsoleTextAttribute(hOutput,FOREGROUND_GREEN|FOREGROUND_INTENSITY);
    SetConsoleCursorPosition(hOutput,POS);
}
вернее даже этот
C++
1
2
3
4
5
FillConsoleOutputAttribute(hOutput, 
        FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE /*цвет*/, 
        SCRN_INFO.dwSize.X*SCRN_INFO.dwSize.Y,POS,NULL);
 
    SetConsoleTextAttribute(hOutput,FOREGROUND_GREEN|FOREGROUND_INTENSITY);
Эту лабу я писал ещё лет так с 5 назад и там весь прикол в графике именно консоле)Чёб текст покрасить НИКАКИХ Дескрипторов не надо, вытри все графические функции и оставь

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
void CleanScreen()
{
    HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);
    CONSOLE_SCREEN_BUFFER_INFO SCRN_INFO;
    GetConsoleScreenBufferInfo(hOutput, &SCRN_INFO);
    
    COORD POS;
    POS.X = 0;
    POS.Y = 0;
    FillConsoleOutputCharacter(hOutput, ' ',
    SCRN_INFO.dwSize.X*SCRN_INFO.dwSize.Y, POS, NULL);
    FillConsoleOutputAttribute(hOutput, 
        FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE /*цвет*/, 
        SCRN_INFO.dwSize.X*SCRN_INFO.dwSize.Y,POS,NULL);
 
    SetConsoleTextAttribute(hOutput,FOREGROUND_GREEN|FOREGROUND_INTENSITY);
    SetConsoleCursorPosition(hOutput,POS);
}
 
void main()
{
    CleanScreen();
    cout<<"\t\tДемонстрация графических возможностей Console Aplication\r\n";
    cout<<"ВАЖНО :\r\n";
    cout<<"\tПри сворачивании окна, скролировании, а также\r\n";
    cout<<"\tизменении его формы необходима перерисовка изображения\r\n";
    cout<<"1 - Перерисовать\r\n";
    //Draw();
    int Redraw;
    cin>>Redraw;
    if(Redraw)
        main();
}
А вместо
C++
1
#include <afxwin.h>
подключи
C++
1
#include <windows.h>

Скорее всего у тебя прога не рисует т.к. ИСПОЛЬЗУЕМ урезанные версии nafxcw и nafxcwd.lib. Рассказывать чё там исправлять в них чтоб ещё и графика была считаю не нужным т.к. вопрос был как покрасить текст в консоли,вот

Добавлено через 3 минуты 11 секунд
Оставь урезанный код и залинкуй, причём не забудь сменить в ProjectSettings
Microsoft Foundation Classes на Use MFC in a Shared DLL - єто для того чтоб прога не ругалась типа unresolved externas symbol _endthreadex и т.д.
1
2 / 2 / 0
Регистрация: 14.02.2009
Сообщений: 21
17.03.2009, 23:35  [ТС] 7
большое спасибо YurA_280784, очень признтелен за помощь
0
17.03.2009, 23:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.03.2009, 23:35
Помогаю со студенческими работами здесь

Создал проект Win32 Console Application
В VStudio 2010 cоздал проект Win32 Console Application. Код компилится без ошибок, а окна консоли...

После установки Visual Studio 2013(community), не создаются win32 console application.
после установки visual studio 2013(community) не создаются win32 console application. подскажите,...

Microsoft visual studio 2005
дайте кто нибудь ссылку откуда можно скачать именно 2005 версию? пожалуйста очень надо

Microsoft Visual Studio 2005
где скачать эту программу Microsoft Visual Studio 2005 Если можно то побыстрее.... заранее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru