Вот пример main.cpp:
Код:
#include <windows.h> #include <iostream> #include <stdlib.h> using namespace std; // Меню typedef struct { string menu; int x; } MENU; // Установка цвета void setcolor(int fcolor, int bgcolor) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), (16*bgcolor)+fcolor); // Устанавливаем цвет и фон } // Перемещение курсора на X,Y координаты void gotoxy(int x, int y) { COORD coord; coord.Y = (SHORT)y; // Устанавливаем X координату coord.X = (SHORT)x; // Устанавливаем Y координату SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord); // Перемещаем курсор на X и Y координаты } // Рисует меню void draw_menu_item(MENU mnu) { gotoxy(mnu.x, 0); // Перемещаем меню вверх и по X-координате setcolor(15, 1); // Устанавливаем синий фон и белые буквы cout << mnu.menu; // Печатаем текста на экране } // Рисует панель меню void draw_menubar() { setcolor(15, 1); // Устанавливаем синий фон и белые буквы gotoxy(0, 0); // Устанавливаем вверх в левый угл // Рисуем панель меню for(int i=0; i<80; i++) cout << " "; // Рисуем пробелы setcolor(15, 0); // Устанавливаем чёрный фон и белые буквы } // Рисует окно void draw_window(int x, int y, int w, int h) { setcolor(15, 1); // Устанавливаем синий фон и белые буквы for(int yy=y; yy<y+h; yy++) { gotoxy(x, yy); // Устанавливем курсор for(int xx=x; xx<x+w; xx++) { cout << " "; } } setcolor(15, 0); // Устанавливаем чёрный фон и белые буквы } int main(int argc, char** argv) { MENU mnuFile; // Меню файл MENU mnuEdit; // Меню правка MENU mnuOptions; // Меню опции MENU mnuHelp; // Меню помощь mnuFile.menu = "File"; // Заголовок File mnuFile.x = 1; // Позиция по X координате 1 mnuEdit.menu = "Edit"; // Заголовок Edit mnuEdit.x = 7; // Позиция по X координате 7 mnuOptions.menu = "Options"; // Заголовок Options mnuOptions.x = 15; // Позиция по X координате 15 mnuHelp.menu = "Help"; // Заголовок Help mnuHelp.x = 70; // Позиция по X координате 70 SetConsoleTitle("My GUI App"); // Устанавливаем заголовок окна draw_menubar(); // Рисуем панель меню draw_menu_item(mnuFile); // Рисуем меню File draw_menu_item(mnuEdit); // Рисуем меню Edit draw_menu_item(mnuOptions); // Рисуем меню Options draw_menu_item(mnuHelp); // Рисуем меню Help draw_window(10, 10, 5, 5); // Рисуем окно gotoxy(0, 23); // Устанавливаем курсор в конец окна system("pause"); // Останавливаем программу, чтобы выйте из программы, нужно нажать любую клавишу return 0; }
Результат: