Advertisement
MARSHAL327

Untitled

Nov 28th, 2019
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.70 KB | None | 0 0
  1. #include <winuser.h> // подключение нужной библиотеки
  2.  
  3. MessageBox(0, L"Хотите сохранить данные?", L"Сохранение", MB_ICONQUESTION | MB_SETFOREGROUND | MB_YESNO)
  4. //======описание MessageBox======
  5. первый параметр - окно в котором всё происходит, оставляй 0
  6. второй параметр - сообщение, которое нужно вывести
  7. третий параметр - заголовок MessageBox(далее MB)
  8. четвёртый параметр - иконки, кнопки и расположение окна, советую оставлять MB_SETFOREGROUND, тк он помещает MB поверх всех окон
  9. подробнее про последний параметр смотри тут: https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-messagebox
  10. //==============================
  11.  
  12. // =========ВИДИМОСТЬ КУРСОРА=========
  13. void show_cursor(bool show) {
  14.     HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
  15.     CONSOLE_CURSOR_INFO structCursorInfo;
  16.     GetConsoleCursorInfo(handle, &structCursorInfo);
  17.     structCursorInfo.bVisible = show;
  18.     SetConsoleCursorInfo(handle, &structCursorInfo);
  19. }
  20. // Вызов ф-ии: show_cursor(FALSE)
  21.  
  22.  
  23. // ==========ПЕРЕМЕЩЕНИЕ КУРСОРА НА ВЫБРАННУЮ КООРДИНАТУ==========
  24. void gotoxy(int xpos, int ypos)
  25. {
  26.     COORD scrn;
  27.     HANDLE hOuput = GetStdHandle(STD_OUTPUT_HANDLE);
  28.     scrn.X = xpos; scrn.Y = ypos;
  29.     SetConsoleCursorPosition(hOuput, scrn);
  30. }
  31. // Вызов ф-ии: gotoxy(5, 3)
  32.  
  33.  
  34. // ==========ОЧИСТКА СТРОКИ==========
  35. void clearRow(int row)
  36. {
  37.     DWORD a;
  38.     HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE); // получаем хэндл окна консоли
  39.     COORD coord = { 0, row - 1 }; // получаем координаты строки для очистки
  40.     CONSOLE_SCREEN_BUFFER_INFO csbi;
  41.     GetConsoleScreenBufferInfo(hStdOut, &csbi); // получаем данные из буфера вывода консоли
  42.     FillConsoleOutputCharacter(hStdOut, ' ', 80, coord, &a); // заполняем строку пробелами
  43. }
  44. // Вызов ф-ии: clearRow(5)
  45.  
  46.  
  47. // ==========УСТАНОВКА ЦВЕТА ТЕКСТА И ФОНА==========
  48. void SetColor(int text, int bg) {
  49.     HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
  50.     SetConsoleTextAttribute(hStdOut, (WORD)((bg << 4) | text));
  51. }
  52. // Вызов ф-ии: SetColor(7, 0) (белые буквы и чёрный фон)
  53. // все цвета: http://www.cyberforum.ru/cpp-beginners/thread52526.html
  54.  
  55. ShowWindow(GetConsoleWindow(), SW_MAXIMIZE); // полноэкранный режим
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement