Загрузка...

Изменение цвета в консоли по выбору

Тема в разделе C/C++ создана пользователем KASPAY 26 мар 2021. 183 просмотра

  1. KASPAY
    KASPAY Автор темы 26 мар 2021 657 11 авг 2019
    Код
    #include <windows.h>
    #include <iostream>
    #include <cstdlib>
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, "Russian");
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
    char number;

    do {
    cout << "1. Зеленный\n";
    cout << "2. Красный\n";
    cout << "3. Синий\n";
    cout << "Выберите номер цвета: ";
    cin >> number;
    } while (number<'1'||number>'3');
    switch (number) {
    case '1':
    SetConsoleTextAttribute(handle, FOREGROUND_GREEN);
    cout << "Зеленый активирован !";
    break;
    case '2':
    SetConsoleTextAttribute(handle, FOREGROUND_RED);
    cout << "Красный активирован !";
    break;
    case '3':
    SetConsoleTextAttribute(handle, FOREGROUND_BLUE);
    cout << "Синий активирован !";
    break;
    }
    return 0;
    }
    [IMG]
    [IMG]
    [IMG]

    Продолжаю учить плюсы...
    :finger_up::stonks_up:
     
  2. ИроничныйЧёрт
    а как обратно?
     
  3. KASPAY
    KASPAY Автор темы 26 мар 2021 657 11 авг 2019
    После перезапуска все сбивается
    --- Сообщение объединено с предыдущим 26 мар 2021
    :kitty:
     
  4. Пифагор
    ИроничныйЧёрт KASPAY Подправил и сделал стандартный цвет, ну а вообще такое надо делать отельной функцией, но это трудая история
    C
    #include <windows.h>
    #include <iostream>
    #include <cstdlib>
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, "Russian");
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
    char number;

    while (true)
    {
    cout << "1. Зеленный\n";
    cout << "2. Красный\n";
    cout << "3. Синий\n";
    cout << "4. Стандартный\n";
    cout << "0. Выход\n";
    cout << "Выберите номер цвета: ";
    cin >> number;
    switch (number){
    case '1':
    SetConsoleTextAttribute(handle, FOREGROUND_GREEN);
    cout << "Зеленый активирован!\n";
    break;
    case '2':
    SetConsoleTextAttribute(handle, FOREGROUND_RED);
    cout << "Красный активирован!\n";
    break;
    case '3':
    SetConsoleTextAttribute(handle, FOREGROUND_BLUE);
    cout << "Синий активирован!\n";
    break;
    case '4':
    SetConsoleTextAttribute(handle, 15);
    break;
    case '5':
    exit(0);
    break;
    }
    }
    return 0;
    }
     
    1. 0xFFE08
      Пифагор,
      Да я бы не сказал
      C
      #include <stdio.h>
      #include <windows.h>
      #include <locale.h>

      void colorPicker(char n, HANDLE hndl);

      int main(void) {
      setlocale(LC_ALL, "Russian");

      HANDLE hndl = GetStdHandle(STD_OUTPUT_HANDLE);

      char cmdNum;

      printf("1. Зеленый\n");
      printf("2. Красный\n");
      printf("3. Синий\n");
      printf("4. Стандартный\n");
      printf("0. Выход\n\n");

      scanf("%c", &cmdNum);

      colorPicker(cmdNum, hndl);

      return 0;
      }

      void colorPicker(char n, HANDLE hndl) {
      switch(n) {
      case '1':
      SetConsoleTextAttribute(hndl, FOREGROUND_GREEN);
      printf("\nЗеленый\n");
      break;
      case '2':
      SetConsoleTextAttribute(hndl, FOREGROUND_RED);
      printf("\nКрасный\n");
      break;
      case '3':
      SetConsoleTextAttribute(hndl, FOREGROUND_BLUE);
      printf("\nСиний\n");
      break;
      case '4':
      SetConsoleTextAttribute(hndl, 15);
      case '0':
      exit(0);
      default:
      exit(0);
      }
      }
      Эт сишка, конечно, но ничего разительно отличающегося здесь нет (Эт скорее для ТС написал)
Загрузка...
Top