Форум программистов, компьютерный форум CyberForum.ru

Цвет текста в консоли - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программное отключение интернета http://www.cyberforum.ru/cpp-beginners/thread637813.html
Всем привет, интересует такой вопрос: Можно кликами мышки выключать интернет в "Центре ...", в настройках адаптера кнопка "Отключить/Включить". Ну так вот, как это сделать из программы? Есть какие-то функции или альтернативы?
C++ Странное поведение wstring Всем привет! Ребята, не могу понять такую ситуацию. Вставляю в wstring строку в позицию 0 таким образом positionclient.insert(0,L"Клиент \" "); positionclient += L" не зарегистрирован"; Смотрю отладчиком строка формируется полностью, но выводится все до слова http://www.cyberforum.ru/cpp-beginners/thread637807.html
Удаление файлов C++
Как удалить программно какой то файл?
Задачка с циклом while C++
И снова здравствуйте! Решаю простую задачку, но вот что-то накрутил с циклом while! В задачки вводиться число кубиков, и известно что на 3 кубика уходит 28 спичек, тогда на 1 кубик=12 спичек, а последущие по 8 спичек на кубик! Тесты проходят нормально на 0, 1, 2, но на всех что выше ответ один 20! Что-то я намудрил с циклом while и счетчик не идет выше двух! Что не так? #include <iostream>...
C++ Ошибка при сборке библиотеки jsoncpp http://www.cyberforum.ru/cpp-beginners/thread637730.html
Пытаю собрать библиотеку для VC++ на Builder2009. Весьма оптимистично, но все же решил попробывать. Наткнулся на такую ошибку с enum . // TEMPLATE CLASS _Tmap_traits template<class _Kty, // key type class _Ty, // mapped type class _Pr, // comparator predicate type class _Alloc, // actual allocator type (should be value allocator) bool _Mfl> // true if multiple equivalent keys...
C++ Китайские иероглифы в консольном приложении Вопрос: можно ли вывести в консоли китайские иероглифы, или например специфичные немецкие буквы стандартами языка си или же с++. Может нужно использовать сторонние библиотеки ?? Слышала про wchar_t, но в моей консоли выводятся только вопросы и тире, либо еще что-нибудь. Пожалуйста, если возможно, то приведите крохотные примеры программ. подробнее

Показать сообщение отдельно
DU
1480 / 1056 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
15.08.2012, 00:29     Цвет текста в консоли
Вот завалялось у меня. Ознакомтесь:

ConsoleGUI.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef _CONSOLE_GUI_H_
#define _CONSOLE_GUI_H_
 
typedef unsigned Coord;
 
enum Color
{
  red = 0x0C,
  green = 0x0A,
  blue = 0x09,
  white = 0x0F,
  gray = 0x07,
  black = 0x00
};
 
void  gotoxy(Coord x, Coord y);
Color gettextcolor();
Color settextcolor(Color c);
Color getbkcolor();
Color setbkcolor(Color c);
 
#endif
ConsoleGUI.cpp
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include <windows.h>
#include "ConsoleGUI.h"
 
namespace
{
  typedef WORD Attr;
 
  HANDLE GetConsoleHandle()
  {
    return GetStdHandle(STD_OUTPUT_HANDLE);
  }
 
  // Глобальные объекты - это очень плохо.
  // Но в данном случае это самый простой способ.
  // Эти переменные хранят текущие цвета текста
  // и фона соответственно.
  Color g_currentTextColor = white;
  Color g_currentBkColor = black;
 
} // namespace
 
 
void gotoxy(Coord x, Coord y)
{
  COORD coord = { static_cast<SHORT>(x), static_cast<SHORT>(y) };
  SetConsoleCursorPosition(GetConsoleHandle(), coord);
}
 
Color gettextcolor()
{
  return g_currentTextColor;
}
 
Color settextcolor(Color c)
{
  const Color prev = gettextcolor();
  Attr attr = static_cast<Attr>(getbkcolor());
  attr <<= 4;
  attr |= static_cast<Attr>(c);
  if (SetConsoleTextAttribute(GetConsoleHandle(), attr))
    g_currentTextColor = c;
  return prev;
}
 
Color getbkcolor()
{
  return g_currentBkColor;
}
 
Color setbkcolor(Color c)
{
  const Color prev = getbkcolor();
  Attr attr = static_cast<Attr>(c);
  attr <<= 4;
  attr |= static_cast<Attr>(gettextcolor());
  if (SetConsoleTextAttribute(GetConsoleHandle(), attr))
   g_currentBkColor = c;
  return prev;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru