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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.88
Rudnik
0 / 0 / 0
Регистрация: 06.09.2013
Сообщений: 19
#1

Графика в С++ в принципе - C++

16.11.2013, 14:06. Просмотров 2300. Ответов 59
Метки нет (Все метки)

Я новичек. Вернее сказать: очень новичек. Решил изучить С++ и попробовать программирование. В качестве хобби. Странное хобби конечно, но так. У моей жены,например, хобби расчищать снег перед моей машиной,даже когда это мне не нужно и никто это странным не находит. Так чем мое хобби хуже? Я нашел кучу литературы. Одну книгу, С. Прата, даже дочитал до конца (остальные просмотрел). Все понял (или мне так показалось), решил несколько упражнений разной сложности, программируя в консольном приложении. Поскольку это хобби, я решил решить сразу большую задачу: написать приложение для составления различных протоколов, актов, результатов замеров и.т.д. с архивацией, выводом на печать, возможностью корректировки и.т.д. Поскольку я новичек, то решил, что это вообщем не сложно и ООП, как раз для этого подходит. И тут возникла первая трудность, которую я не могу решить уже две недели. А именно начало. По мысли все должно начинаться так:при запуске программы--цветная заставка с кнопками меню, затем выпадающее меню и дальше... как бог пошлет. Но при запуске консольного приложения выскакивает маленькое черное окошечко в котором выполняется программа. И как в нем реализовать мои грандиозные планы неясно. Я задавал этот вопрос на разных форумах и все ответы можно разделить на два:1. Это как то по другому 2.Иди в жопу (учи мат.часть). Но влюбой книге (мат.части) сказано: прочитай меня без графики, а графика это уже проще. Копаясь в интернете я выяснил, что есть две возможности:1.Преревести экран в графический режим и рисовать с помощью функций. 2. Использовать OpenGL, DirectX, Win32API и.т.д. По поводу первого способа: я понял, что это устаревший вариант и сейчас так сделать нельзя. По повод второго способа, я столкнулся с рядом трудностей: во-первых мой компилятор(IDE) (code::blocks) поддерживает не все варианты, т.е. проекты такие есть, но проблемы с библиотеками и заголовочными файлами, а менять code::blocks на что-нибудь другое не хотелось бы. Во вторых я так и не нашел соответствующей литературы, где бы четко и ясно (как в учебниках по С++) разъяснялось, как это делается в ПРИНЦИПЕ, с самого начала. Если бы кто-нибудь из опытных(или не очень) гуру пояснил бы мне с чего начать(или начальную литературу) или подсказал иной вариант или способ, я был бы очень рад и благодарен.

С уважением Новичок
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2013, 14:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Графика в С++ в принципе (C++):

Не могу разобраться в принципе работы цикла - C++
1. как в данном случае работает цикл for без третьего условия? for(i=0; s ; ) { for(;s&&s==' ';i++); if(s) {....}}2. Чему у нас...

Разобраться в принципе работы задачч. (Работа с динамической памятью через указатели. ) - C++
Вот условие задачи: Создать массив из N целых чисел, N вводит пользователь. Заполнить массив случайным образом в диапазоне от 1 до 12....

Не могу разобраться в принципе работы цикла - C (СИ)
1. как в данном случае работает цикл for без третьего условия? for(i=0; s ; ) { for(;s&&s==' ';i++); if(s) {....}}2. Чему у нас...

Как круг вписать в массив и возможно ли в принципе? - MathCAD
Создал массив данных получил 3D изображение двух четырёхгранников соединённых вместе . хочу в месте где они соединены поставить круг вместо...

Можно ли в принципе максимально апгредейдить эту мать - Материнские платы
материнка Epox EP-4PEA9(I) (5 PCI, 1 AGP, 2 DDR DIMM, Audio) с чипсетом Intel Brookdale i845PE-W83627. Не могу ни как найти однозначного...

Можно ли в принципе максимально апгредейдить эту мать - Апгрейд компьютера
Старенький - да, но работает и родной!))) Системная плата Epox EP-4PEA9(I), подробно во вложениях. Есть желание просто поднять по максимуму...

59
stima
487 / 339 / 39
Регистрация: 22.03.2011
Сообщений: 1,084
Завершенные тесты: 2
16.11.2013, 15:32 #2
В программирование есть такое понятие GUI (graphical user interface), для каждой платформы (Windows, Mac, LInux) разработчики платформы предоставляют API (application interface) для разработки GUI.

1. Для Windows это WinaApi
2. Для Linux это "X Windows" (тут несовсем так, так как архитекура Linux сама по сибе не графическая, а Xlib это уже можно считать больше дополнением чем native).
3. Для Mac это Mac OS X GUi

Как видете спектр широк и поэтому умные люди в основном используют дополнительные библиотеки/платформы которые уже реализуют обертку для всех трех (и более) платформ.

Тут самым популярным, наверное, будет Qt - Cross platform GUI Framework. Остальное здесь http://en.wikipedia.org/wiki/List_of..._GUI_libraries.

Ваши действия.
1. Качаете, ставите (это бесплатно)
2. Читаете мануалы смотрите примеры.
3. Пишите.
4. Профит.
1
gazlan
3133 / 1909 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
16.11.2013, 15:43 #3
  • Таки освоить консоль и программирование базовых вещей. Это, действительно, важно - в отличин от графики.
  • Выбор библиотеки - OpenGL, DirectX... etc, это как выбор транспортного средства: сначала надо решить куда и зачем ехать, а потом соотносить комфорт/стоимость.
  • "цветная заставка с кнопками меню, затем выпадающее меню и дальше" - это для "блондинок". Программисты мыслят иными категориями. Не освоите консоль - останетесь на уровне "формочек с рюшечками".
  • Найдите Аммерал Л. Серия книг. Машинная графика на языке Си. - Отличное введение в тему.
0
Rudnik
0 / 0 / 0
Регистрация: 06.09.2013
Сообщений: 19
16.11.2013, 16:20  [ТС] #4
Цитата Сообщение от stima Посмотреть сообщение
В программирование есть такое понятие GUI (graphical user interface), для каждой платформы (Windows, Mac, LInux) разработчики платформы предоставляют API (application interface) для разработки GUI.

1. Для Windows это WinaApi
2. Для Linux это "X Windows" (тут несовсем так, так как архитекура Linux сама по сибе не графическая, а Xlib это уже можно считать больше дополнением чем native).
3. Для Mac это Mac OS X GUi

Как видете спектр широк и поэтому умные люди в основном используют дополнительные библиотеки/платформы которые уже реализуют обертку для всех трех (и более) платформ.

Тут самым популярным, наверное, будет Qt - Cross platform GUI Framework. Остальное здесь http://en.wikipedia.org/wiki/List_of..._GUI_libraries.

Ваши действия.
1. Качаете, ставите (это бесплатно)
2. Читаете мануалы смотрите примеры.
3. Пишите.
4. Профит.
Спасибо! Значит все таки лучше WinAPI. Сейчас установлю QT. Еще раз большое спасибо.

Добавлено через 4 минуты
Цитата Сообщение от gazlan Посмотреть сообщение
  • Таки освоить консоль и программирование базовых вещей. Это, действительно, важно - в отличин от графики.
  • Выбор библиотеки - OpenGL, DirectX... etc, это как выбор транспортного средства: сначала надо решить куда и зачем ехать, а потом соотносить комфорт/стоимость.
  • "цветная заставка с кнопками меню, затем выпадающее меню и дальше" - это для "блондинок". Программисты мыслят иными категориями. Не освоите консоль - останетесь на уровне "формочек с рюшечками".
  • Найдите Аммерал Л. Серия книг. Машинная графика на языке Си. - Отличное введение в тему.
Образно говоря, я и есть "блондинка" в программировании. За ссылку на книгу,спасибо! Сейчас поищу.
0
Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 420
Записей в блоге: 5
16.11.2013, 20:45 #5
Rudnik, начинать с языка с++ не советовал бы, так как он нужен для решения вычислительных задач, таких как расчеты для вывода графики и тд, а вам лучше с делфи начать. там с GUI у вас проблем не возникнет, пусть выполнение программ менее быстрое, но вам самый то. А в с++ вы убьете кучу времени на реализацию гуя.

для гуя в с++ юзайте всякие либы

естессно это моё мнение, можете не прислушиваться

Добавлено через 45 секунд
Цитата Сообщение от Rudnik Посмотреть сообщение
лучше WinAPI.
эта жуткая фраза, поверьте. начнете делать - поймете
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
16.11.2013, 20:52 #6
Цитата Сообщение от Крюгер Посмотреть сообщение
Rudnik, начинать с языка с++ не советовал бы, так как он нужен для решения вычислительных задач, таких как расчеты для вывода графики и тд, а вам лучше с делфи начать.
Зачем такое советовать?
0
Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 420
Записей в блоге: 5
16.11.2013, 20:59 #7
castaway, ему ж гуёвые приложения писать хочется как я понял

Добавлено через 4 минуты
и да, я посоветовал только начать. имхо проще. а потом и за с++ можно браться, я так делал
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
16.11.2013, 20:59 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Крюгер, это я понял, но чем для этого плох язык С++ ? Я могу написать на С++ то, что ты никогда не напишешь на Delphi. Рекомендации не обоснованы.
Начинать на Delphi а потом переходить на C++ по-моему глупо.
4
Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 420
Записей в блоге: 5
16.11.2013, 21:01 #9
castaway, а можно и borland c++

Добавлено через 43 секунды
там и vcl и возможности с++
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
16.11.2013, 21:03 #10
Цитата Сообщение от Крюгер Посмотреть сообщение
castaway, а можно и borland c++
Delphi и есть продукт компании Borland.
Но суть не в этом, суть в том, что язык С++ очень "гибкий", на нём можно написать любую программу.
Мне даже самому интересно, что на нём нельзя написать..
0
Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 420
Записей в блоге: 5
16.11.2013, 21:06 #11
castaway, пфф... есть borland delphi, a есть borland c++
это вам к сведению , а вы не знали?

Добавлено через 27 секунд
а есть rad studio там это совмещено в 1 пакет
0
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
16.11.2013, 21:08 #12
Продукты Borland были актуальны во времена DOS, в настоящее время ни один уважающий себя программист не пользуется их компиляторами.
1
Байт
Эксперт C
16338 / 10614 / 1589
Регистрация: 24.12.2010
Сообщений: 20,247
16.11.2013, 21:12 #13
Цитата Сообщение от Rudnik Посмотреть сообщение
Сейчас установлю QT.
Вот тогда и поговорим.
Цитата Сообщение от Rudnik Посмотреть сообщение
из опытных(или не очень) гуру пояснил бы мне с чего начать(или начальную литературу)
Я начинал со Шлее "Профессиональное программирование...". Но слово "виджет" меня уже в ступор не вводило. В других местах это называется просто - "окно" (window). Эти "окна" уже печенку проели насквозь, а тут термин новый и симпатичный.
Но, конечно, надо понимать немножко конструкции С++. По поводу чистого Си, как я понимаю, у вас особых проблем нет. Это уже хорошо.
У Qt есть свои заморочки, но это мне было тяжело, висел груз вполне удачного процедурного программирования, вам, я уверен, будет легче.
Создадите свой "Hellow, World!", потом Label с портретом любимой женщины, и все покатит, я уверен.
Удачи вам! Думаю, еще найдется о чем поговорить.
Не оставляйте стараний, маэстро, не убирайте ладони со лба.
Добавлено через 3 минуты
Цитата Сообщение от Крюгер Посмотреть сообщение
лучше с делфи начать
Но это, как вы сами заметили, уже давно мертвечина. А Си, как говаривал мой хороший приятель, он и в Африке - СИ. Пусть он даже и плюсы на себя навешивает.
0
Крюгер
0 / 60 / 3
Регистрация: 16.11.2012
Сообщений: 420
Записей в блоге: 5
16.11.2013, 21:14 #14
Байт, а... как на счет C# в конце концов?
0
Байт
Эксперт C
16338 / 10614 / 1589
Регистрация: 24.12.2010
Сообщений: 20,247
16.11.2013, 21:15 #15
Цитата Сообщение от castaway Посмотреть сообщение
в настоящее время ни один уважающий себя программист не пользуется их компиляторами.
Коллега, а нельзя ли повежливей?
0
16.11.2013, 21:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2013, 21:15
Привет! Вот еще темы с ответами:

Вывести top сумм с сортировкой, возможно ли в принципе? - SQL Server
Здравствуйте! Скажите, пожалуйста, данную задачу как-то можно реализовать посредством SQL одним запросом? Платформа MSSQL 2005. ...

Как в принципе передавать картинку в апплет в runtime. - Java
Искал на форуме, не нашел. Задача следующая: апплет должен рисовать у себя в canvas'е картинку. Но в момент сборки апплета...

Как лучше в принципе реализовывать систему регистрации/авторизации - C# MVC
Как лучше в принципе реализовывать систему регистрации/авторизации? Создаётся свой MembershipProvider, происходит валидация пользователя...

Как в принципе осуществляется связь с БД, если она на сервере - C#
Здравствуйте! У нас идет курс C# и курс БД. Дабы нам всем "облегчить" жизнь преподаватели объединили лабу. Нужно написать клиента на...


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

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

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