Графическая библиотека
Инициализация и закрытие графики
Библиотека для C++, использовать только в файлах c расширением «.cpp». Подключение:
#include «graphics.h»
Внимание! Нужно ставить самым последним в списке подключаемых файлов.
int initwindow(int width, int height, const char* title=»Windows BGI», int left=0, int top=0, bool dbuf=false, bool closeall=true);
Инициализирует графическую систему (новая).
Создается окно указанного размера. Возвращается номер окна. Можно также задать заголовок окна, координаты, режим буферизации (по умолчанию не включена), поведение при нажатии кнопки X для закрытия окна (по умолчанию закрывается программа).
int getmaxx(void);
Возвращает максимальную координату экрана по x.
int getmaxy(void);
Возвращает максимальную координату экрана по y.
void closegraph();
void closegraph(int window);
Завершает работу с графической системой.
Графическое окно закрывается. По умолчанию закрываются все окна, можно указать номер окна или CURRENT_WINDOW для закрытия текущего окна.
void cleardevice(void);
Очищает графический экран. Все установки сбрасываются в начальное состояние.
int getcurrentwindow(void);
void setcurrentwindow( int window );
Позволяют выбрать текущее окно и узнать номер текущего графического окна.
void restorecrtmode(void);
Восстанавливает текстовое консольное окно и делает его текущим.
Устаревшие функции, для совместимости со старыми программами
void initgraph(int *graphdriver, int *graphmode, char *pathtodriver);
Инициализирует графическую систему.
Для graphdriver можно указать значения DETECT, CGA, EGA, VGA и др. Для graphmode — CGAC0, CGAHI, EGALO, EGAHI, VGALO, VGAMED, VGAHI, VGAMAX и т.д. Отличия только в размерах создаваемого окна, они устанавливаются в соответствии с возможностям старых видеокарт (VGA/VGAHI — 640×480, VGA/VGALO — 640×200, VGA/VGAMAX — максимально возможный размер). В режиме DETECT — используется VGA/VGAHI. Последний параметр не используется.
Вызов:
int gd=VGA, gm=VGAMAX; initgraph(&gd,&gm,"");
Unable to use graphic.h in c++ in visual studio
Okay so I needed to create a project in c++ which involves using multiples straight lines in the output.So I searched through everything and thought of using graphic.h. But it doesn’t work in Visual Studio 2019 so I somehow downloaded graphic.h but i’m still not able to run my program for idk what reasons. So is there an easy way to do this?I just need to have a bunch of straight lines and maybe a little bit of color too.
27.4k 4 4 gold badges 31 31 silver badges 41 41 bronze badges
asked Aug 22, 2020 at 14:40
Mustafa Noman Mustafa Noman
13 1 1 gold badge 1 1 silver badge 3 3 bronze badges
Does this answer your question? How I can get and use the header file in my C++ program?
Aug 22, 2020 at 14:43
2 Answers 2
graphics.h is a non-standard header that’s only available with the Turbo C / Turbo C++ compilers from Borland. Those products have been obsolete for ~25 years and should not be used today.
In addition, any code that uses graphics.h will only work on old DOS systems (and old windows systems that ran on top of DOS or included a DOS subsystem). Modern Linux and Windows systems won’t work with code based on graphics h
You should switch to a more modern graphics library like SFML or SDL or a number of other options. Learning / using graphics.h in 2020 is just wasting your time — noone uses that any more and it doesn’t even work on modern systems.
Как настроить библиотеку SFML в Visual Studio

В этой статье объясняется, как настроить ваши проекты SFML, если Вы используете интегрированную среду разработки программного обеспечения Visual Studio (компилятор Visual Studio С++).
Установка SFML
Скачайте SFML SDK со страницы загрузки. Выбираем самую последнюю версию софта, на сегодня это версия SFML 2.5.1. Есть варианты выбора для 32-х разрядных систем и 64-х разрядных (рис. №1). Я скачиваю 64-х разрядную библиотеку.

Скачанный архив Вы можете распаковать в любую папку. Я распаковываю на диск С: в папку IT (C:\IT).
Создание и настройка проекта SFML
Создаём пустой проект в Visual Studio (рис. №2).

В обозреватели решений выбираем наш проект (рис. №3).

В меню проекта выбираем добавить новый элемент (рис. №4).

Добавляем файл main.cpp (рис. №5).

Указываем компилятору, где найти заголовочные файлы SFML (файлы .hpp).
Меню -> проект -> свойства проекта -> С/С++ ->общие ->Дополнительные каталоги включаемых файлов
Обращаем внимание на платформу решения, она должна совпадать с разрядностью скачанной библиотеки SFML. В нашем случае мы настраиваем 64-х разрядную библиотеку (рис. №6). Если Вы настраиваете 32-х разрядную систему тогда указывайте x86.

В обозреватели решений выбираем наш проект (рис. №3).
Выбираем меню проект и меню свойства (рис. №7).

В свойствах проекта добавляем путь к заголовочным файлам SFML (рис. №№8-11).
С/С++ ->общие ->Дополнительные каталоги включаемых файлов (включаем каталог include)




Указываем компоновщику, где найти библиотеки SFML (файлы .lib рис.№№12-14).
Компоновщик -> общие -> дополнительные каталоги библиотек(включаем каталог lib)



Связываем наше приложение с библиотеками SFML файлами *.lib (рис. №№15-16)
для Debug :
для Release :
Компоновщик -> ввод -> дополнительные зависимости


Копируем название библиотек в поле окна дополнительные зависимости (рис. №16 конфигурация Debug).
Устанавливаем отображения графического окна без консоли (рис. №17).
Компоновщик -> система -> подсистема (subsystem:windows)

Создаём точку входа: mainCRTStartup (рис. №18).
Компоновщик -> дополнительно -> точка входа

Незабываем в конце нажать кнопку применить.
Копируем все файлы из папки bin библиотеки SFML и вставляем в наш проект (рис. №19).

Копируем шаблон кода библиотека SFML в файл main.cpp (рис. №20)

Шаблон кода библиотеки SFML:
#include using namespace sf; int main() < RenderWindow window(VideoMode(400, 400), L"Новый проект", Style::Default); window.setVerticalSyncEnabled(true); CircleShape shape(100.f,3); shape.setPosition(100, 100); shape.setFillColor(Color::Magenta); while (window.isOpen()) < Event event; while (window.pollEvent(event)) < if (event.type == Event::Closed) window.close(); >window.clear(Color::Blue); window.draw(shape); window.display(); > return 0; >
Выполним код программы (рис. №21).

Если у Вас появился треугольник, значит Вы сделали всё правильно, создав свой первый проект SFML C++.
Если что-то у Вас не вышло, то более подробную инструкцию подключения библиотеки SFML к Visual Studio 2022, а также создание шаблона библиотеки SFML в Visual Studio, вы можете узнать посмотрев видео «Подключение библиотеки SFML C++».
Не подключается graphics h
проходили в колледже графику с помощью graphics.h. (Там я даже анимировал стакан)) Дома на пк не работает :/ Подключил заголовочный файл, библиотеку, но не работает окно вывода. Код:
#include "graphics.h" #pragma comment(lib, "graphics.lib") int main()

Файлы для graphics.h брал на github — https://github.com/ahuynh359/Graphics IDE — Visual studio 2019
Отслеживать
задан 13 июн 2022 в 14:27
5 2 2 бронзовых знака
ошибок нет уже хорошо значит работает (доходит до return) попробуйте с getchar()
13 июн 2022 в 14:53
а еще лучше добавьте delay(5000) к примеру, перед getchar() у вас просто сразу выход походу происходит
13 июн 2022 в 15:41
Спасибо! С getchar заработало 🙂