Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 33, средняя оценка - 4.70
nikelsj
#1

MinGW + Graphics.h It's work) - C++

04.11.2012, 22:19. Просмотров 4901. Ответов 17
Метки нет (Все метки)

В процессе изучения языка С++ часто сталкивался в проблемой рисования через консоль, на разных форумах находил тот же самый вопрос, но ни одного ответа, максимум порекомендуют поставить 100летний Borland, но все же это не самый лучший вариант, особенно учитывая тот факт, что у меня стоит Win 7 x64, у них даже XE3 последний хрен знает как работает на x64)))
После часовых поисков удалось найти graphics.h который более менее работал) и после исправления пары сотен ошибок его все же вышло подключить...

Тут его можно скачать http://file.uacode.com/G/2307

Для подключения кинуть скачанный graphics.h в папку к вашей проге и набрать:
#include "Graphics.h"

Для проверки в main(){...
//инициализируем графический режим
int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, "");


Если не вылизло кучи ошибок, все ОК)))

Xорошая инфа по все функциям тут: http://valera.asf.ru/cpp/scpp/cppd_graphics.h.htm
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2012, 22:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос MinGW + Graphics.h It's work) (C++):

Может ли MinGW x64 компилить приложения x32? Или нужно для этого отдельно ещё MinGW х32 качать? - C++
Просто решил поиграться с CodeLite.

Mingw-w64 MinGW TDM-GCC - C++
Всем привет. Хочу понять, существует ли принципиальная разница между Mingw-w64, MinGW и TDM-GCC? Какие плюсы/минусы у этих трех...

Где скачать Borland С++ с поддержкой graphics.h. Уроки по библеотеке graphics.h - C++
Подскажите, нужен Borland С++ с поддержкой graphics.h. Я видел только 1 борланд и выглядело все там не так как мне нужно. Есть новый...

Создать меню с командами Input, Work, Exit - C++
Создать меню с командами Input, Work, Exit. При выборе команды Exit приложение завершает работу. При выборе команды Input открывается...

Посчитайте НОК чисел второй последовательности. doesnt work - C++
#include <iostream> #include <vector> int GCD(int a, int b) { if (b == 0) return a; else return GCD(b, a%b); ...

error C3867: 'SystemMessages::Work': function call missing argument list - C++
error C3867: 'SystemMessages::Work': function call missing argument list; use '&SystemMessages::Work' to create a pointer to member ...

17
coloc
погромист
411 / 247 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
04.11.2012, 22:51 #2
Спасибо большое! Сам столько Graphics.h перепробовал но этот пошел.
0
SeaMonster
15 / 15 / 0
Регистрация: 31.12.2012
Сообщений: 101
31.12.2012, 09:49 #3
очень обрадовался материалу!
Что я делаю неправильно?
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
#include<stdio.h>
#include<Graphics.h>
#include<windows.h>
 
int main(){
long int i=0;
int gdriver=DETECT,gmode,errorcode;
initgraph(&gdriver,&gmode,"");
line(0,0,900,900); 
line(0,0,1900,1024);
bar(0,0,1000,1000);
const char* name="1.bmp";
FILE* f1=fopen(name,"rt");
if(f1==NULL){printf("f1 NUL!!!  ");}
HDC p1=txLoadImage ("1.bmp",1152,648);  ///Пытаюсь загрузить файл
HDC p2=GetDC(NULL); ///Пытаюсь определить hdc экрана
 
if(p1==NULL){printf("p1 NULLL!!!!");}
if(p2==NULL){printf("   p2 NULLL!!!!");}
 
for(i=0;i<10000l;i++){
txBitBlt ( p2,
                   100,
                   200,         
                   1200,       
                   1200,        
                   p1,             
                   0,          
                  0                               );
}
char buf[100];gets(buf); //Выход по энтеру через ***. В сторону - как сделать нормальный?
return 0;
}
Возможности bgi работают чудно, а вот попытка прочесть и вывести файл приводит к тому, что что-то мелькает и исчезает. Зациклив, добился лишь появления на цикл черного прямоугольника...
0
Kastaneda
Jesus loves me
Эксперт С++
4689 / 2893 / 236
Регистрация: 12.12.2009
Сообщений: 7,354
Записей в блоге: 2
Завершенные тесты: 1
31.12.2012, 10:07 #4
SeaMonster, зачем тебе graphics.h, если ты используешь WinAPI? Убери его вообще.
0
Avazart
Эксперт С++
7246 / 5418 / 297
Регистрация: 10.12.2010
Сообщений: 24,043
Записей в блоге: 17
31.12.2012, 13:42 #5
Цитата Сообщение от nikelsj Посмотреть сообщение
часто сталкивался в проблемой рисования через консоль
Ну это странная задача...
( тем более для XE3 )
0
Evg
Эксперт CАвтор FAQ
18241 / 6366 / 435
Регистрация: 30.03.2009
Сообщений: 17,607
Записей в блоге: 28
31.12.2012, 13:50 #6
Цитата Сообщение от nikelsj Посмотреть сообщение
но все же это не самый лучший вариант
Цитата Сообщение от nikelsj Посмотреть сообщение
После часовых поисков удалось найти graphics.h который более менее работал)
Данный файл представляет собой функции, которые описаны в старом борландовском graphics.h, но реализация их сделана через современные интерфейсы (а не DOS'овские). Т.е. по сути дела это эмулятор. Причём он даже выполнен в формате "для чайников" - в *.h файл засунуты реализации, чтобы людям не пришлось мучиться с подключением библиотек

Идея, конечно, похвальная, тут без вопросов, но, подозреваю, работать оно будет далеко не в 100% случаев, а лишь в статистически наиболее значимых
0
Evg
Эксперт CАвтор FAQ
18241 / 6366 / 435
Регистрация: 30.03.2009
Сообщений: 17,607
Записей в блоге: 28
31.12.2012, 13:51 #7
На данной файлопомойке файлы хранятся только 90 дней, так что для порядку приаттачу его, а то многим он может пригодиться
0
Вложения
Тип файла: rar Graphics.rar (26.6 Кб, 158 просмотров)
Evg
Эксперт CАвтор FAQ
18241 / 6366 / 435
Регистрация: 30.03.2009
Сообщений: 17,607
Записей в блоге: 28
31.12.2012, 13:55 #8
nikelsj, ты для порядку скажи, где этот файл откопал, а то там написано, что это альфа-версия (т.е. для внутреннего тестирования), а потому есть подозрение, что они что-то ещё там обновят
0
nonedark2008
931 / 670 / 147
Регистрация: 28.07.2012
Сообщений: 1,827
31.12.2012, 13:58 #9
Хее. Помнится мы в школе справлялись собственными силами... Через ассемблерную вставку врубается нужный графический режим(Обычно это был 13). А далее, рисование прямо в видеобуфер.
0
DruidCat
4 / 4 / 1
Регистрация: 15.12.2012
Сообщений: 31
01.01.2013, 19:20 #10
Блин, чтож это за школа такая, я блин учил бейсик, когда учился на информатике.
0
-=ЮрА=-
01.01.2013, 20:39
  #11

Не по теме:

Graphics.h можно свободно переписать на GDI с идентичными оригинальному заголовками функций и будет портируемый код между MSVS и BorlandC, в своё время так и делал...

0
DruidCat
4 / 4 / 1
Регистрация: 15.12.2012
Сообщений: 31
18.01.2013, 23:56 #12
Есть возможность создавать крутую графику с помощью связки MinGW+OpenGL, а извратами Graphics.h не стоит себе забивать голову. OpenGL очень понятен и прост для реализаций функций, которые есть в Graphics.h. И OpenGL куда круче. Тока книгу хорошую нужно иметь, чтоб учиться писать программы. Советую "Супер книга OpenGL" (она так и называется) третье издание.
1
SeaMonster
15 / 15 / 0
Регистрация: 31.12.2012
Сообщений: 101
19.01.2013, 00:24 #13
Спасибо. Книга вроде хорошая, однако просмотрев, не нашел ответа на пока самый главный для меня вопрос - как "укротить" компилятор Mingw чтобы он компилировал серьезные графические библиотеки?
Вообще уже понял, в чем в исходном листинге ошибался, кое-как эту библиотеку (по сути - функции winapi) благополучно использую, но давно хочу открывать не Bmp а jpg. Нашел в инете немало примеров про gdi+ или другие продвинутые графики, но все это компилятор отказывается Линковать. Например сейчас попробовал из книги записать, он
[img]http://грузите вложения на форум[img]
в том же абсолютно стиле кончаются любые попытки откомпилировать в mingw серьезную графику. Понял что надо толи добавлять в mingw скачиваемые библиотеки, которых в стандартной поставке нет, толи грамотно писать команду компиляции, но не понял как именно пока.
0
-=ЮрА=-
Заблокирован
Автор FAQ
19.01.2013, 00:39 #14

Не по теме:

Ну конечно же если не уметь пользоваться GDI то OpenGL всегда лучше



Добавлено через 4 минуты
Недостаток GL-я, как вобщем то большинства подобных библиотек - очень сложно пользоваться, куча функций, режимов. А ведь всё это можно сделать в банальном GDI если постараться и слои, и тени и свет и 3D - лишь бы желание и врмя было. Да модели в GDI отчертить сложновато, зато наложить битмап очень просто, в контекст окна врезаться очень просто, в то время как GL требует wglContext-а да и ещё глючно рисует линии в определённых режимах (если зарубиться им в окно). Всё зависит от конретной задачи и кричать GL лучше может только человек который мало знает о GDI. Я писал график и с GDI и с GL - начертить график на форме проще в GDI в GL - мозго****ство
0
SeaMonster
15 / 15 / 0
Регистрация: 31.12.2012
Сообщений: 101
19.01.2013, 13:39 #15
Так как продвинутые графики это уже Тут оффтоп, создал тему Компиляция серьезной графики под Mingw
0
19.01.2013, 13:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2013, 13:39
Привет! Вот еще темы с ответами:

Компиляция в g++ из MinGW - C++
Добрый день! После скачивания и установки MinGW пытаюсь скомпилировать простую программу из разряда Hello, World! Набирая в...

MinGW + Netbeans - C++
Здравствуйте. Помогите, пожалуйста, разобраться с проблемками. Первая проблема заключается в том, что я добавил свой каталог библиотек, но...

MinGW + OpenGL - C++
Как прикрутить OpenGL к MinGW(C++)? Это вообще реально? Сколько перепробовал, не работает(Не исключаю &quot;прямоту&quot; своих рук). После...

MinGW mysql - C++
Здравствуйте, объясните пожалуйста как заставить компилятор g++ работать с функциями mysql, нужен пример компиляции у меня ничего не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru