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

Как осуществляется вывод на экран в windows приложениях? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,508
16.09.2011, 11:35     Как осуществляется вывод на экран в windows приложениях? #1
Собственно у меня есть несколько лабораторных по с++, так вот первые нужно сдать в виде консольных приложениях, а в последних сделать приложение с интерфейсом (MFC , SDI либо MDI ). Так вот как нужно делать вывод информации в классе (один из методов класса - печать данных о Студентах (полное имя, группа, балл)) чтобы потом это дело можно было прикрутить к интерфейсу? Как я понимаю просто в виде cout в методе класса не пойдёт, вот думаю может сделать так чтобы функция получала аргумент типа ostream и таким образом я сейчас смогу выводить информацию либо в поток cout либо в файл, но смогу ли я потом как-то хитро так же легко передавать функции какой параметр для вывода информации в приложении с интерфейсом?

Ну или как вообще поступают в таких случаях? Или будет легче потом дописать отдельно метод для вывода с расчётом на приложение с интерфейсом? Ато я сейчас вообще приложений с интерфейсом ни 1 не создавал, работал только с консолью.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zalogic
 Аватар для zalogic
144 / 140 / 2
Регистрация: 12.12.2010
Сообщений: 253
16.09.2011, 11:39     Как осуществляется вывод на экран в windows приложениях? #2
ну можно наверно в классе перегрузить << в теории.
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 11:40     Как осуществляется вывод на экран в windows приложениях? #3
Цитата Сообщение от Gepar Посмотреть сообщение
Как я понимаю просто в виде cout в методе класса не пойдёт, вот думаю может сделать так чтобы функция получала аргумент типа ostream и таким образом я сейчас смогу выводить информацию либо в поток cout либо в файл, но смогу ли я потом как-то хитро так же легко передавать функции какой параметр для вывода информации в приложении с интерфейсом?
Пишу уже 8 лет в MFC есть вопросы пиши в личку, алгоритм создания проекта в 6-ке прост, выбрал проет MFC затем DialogBased - появилось окно в режиме дизайнера, пихай в него контролы и делай их связывание в ClassWizard + там где надо вводи обработчики событий (нажатие кнопки, клик или скролл мышы) - это в общем. Хочешь конкретики выкладывай задание - оберну его в интерфейс приложения MFC
pincet
 Аватар для pincet
1096 / 757 / 79
Регистрация: 23.07.2010
Сообщений: 3,795
16.09.2011, 11:41     Как осуществляется вывод на экран в windows приложениях? #4
не так просто все в GUI-приложениях. тебе нужно нужно определиться, в какой форме ты хочешь предоставить информацию пользователю - в списке, в таблице etc. Затем на форму класть эти элементы и пользовать интерактивно (заполнять данными)
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 11:43     Как осуществляется вывод на экран в windows приложениях? #5
Цитата Сообщение от zalogic Посмотреть сообщение
ну можно наверно в классе перегрузить << в теории.
- как я понял речь идёт о графическом оконном приложении а не чёрном экране, так что перегрузить для привязки к контролу окна врядли получиться

Добавлено через 1 минуту
Gepar, выкладывай задание что размышлять как реализовывать, тебе же ведь примеры реализации нужны или как?
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,508
16.09.2011, 12:02  [ТС]     Как осуществляется вывод на экран в windows приложениях? #6
Задание (практически полностью (кроме сортировки) я уже реализовал в виде консольного приложения):
Код
Описать класс для реализации работы с выбранной динамической структурой данных, которая хранит список студентов группы. Класс должен содержать следующие, доступные пользователю интерфейсы:
-	добавить элемент;
-	удалить элемент;
-	найти элемент;
-	вывести на экран полную информацию о найденном элементе;
-	удалить все элементы;
-	вывести на экран полную информацию обо всех элементах;
-	отсортировать элементы.
Класс должен содержать указатель(и), необходимые для работы с используемой динамической структурой данных, который(е) не должны быть доступны пользователю.
Элемент, как правило, определяется (задается) своей информационной частью (полезной информационной нагрузкой). При работе этот класс не должен предоставлять пользователю доступ к элементу используемой динамической структуры данных, а только к информационной части (ее копия или указатель на нее).
Информационная часть представляется в виде структуры, которая хранит следующую информацию для каждого студента (все строковые данные представляются через указатели.):
-	фамилия;
-	имя;
-	отчество;
-	год рождения:
-	средний балл;
-	учебная группа;
При выполнении лабораторной работы №1 могут быть использованы следующие динамические структуры данных:
1.	Однонаправленный список.
2.	Однонаправленный кольцевой список.
3.	Двунаправленный кольцевой список.
4.	Динамический массив.
В самом классе у меня есть метод print, который и печатает информацию о студентах в поток cout, ну также при поиске выводится информацию о нужных студентах в консоль тоже через cout.

Вместе с тем есть вот такая одна из последних лабораторных:
Код
Задание №5.

Создайте проект для разработки одного из трех типов MFC приложения (основанного на диалоговом окне, SDI или MDI по Вашему выбору). В этом проекте приложения разработайте визуальный интерфейс для взаимодействия с пользователем, с помощью которого будут реализованы все описанные действия над выбранной динамической структурой данных при работе с группой студентов и факультетом.  Этот интерфейс должен включать меню, диалоговые окна, акселераторы. Выбор элементов управления, с помощью которых реализуется интерфейс с пользователем в диалоговых окнах, осуществить самостоятельно.
Где мне нужно будет по сути прикрутить к тому что было в первой лабораторной и остальных интерфейс. Вопрос: что сейчас в первой лабе нужно сделать чтобы потом было удобно прикручивать интерфейс? Преподаватель сказал что мол тут есть какая-то хитрость и просто вывод через cout если сделать сейчас то потом в 5 лабе к интерфейсу вывод уж не прикрутишь так как консоли то не будет. Вот я и спрашиваю что же там за хитрость и как мне сейчас поступить с 1 лабой чтобы потом 5 получилось сделать
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 12:08     Как осуществляется вывод на экран в windows приложениях? #7
Задание №5. - хорошо займусь, вобщем нужно что то типа проекта по работе с успеваемостью студентов + єто всё в окошке и с примочками, Gepar, как понимаешь нужно время ближе к вечеру что то выложу
zalogic
 Аватар для zalogic
144 / 140 / 2
Регистрация: 12.12.2010
Сообщений: 253
16.09.2011, 12:47     Как осуществляется вывод на экран в windows приложениях? #8
-=ЮрА=-, ну почему же? В теории можно просто передать указатель на этот самый компонент или контрол и уже егов операторе использовать.
Такого не делал конечно на практике, но для мозголомства можно попробовать в принципе.
Вот например класс комплексных чисел. Там тоже этот оператор перегружен.
C++
1
ostream& operator<<(ostream& , complex);
как-то так... по аналогии почему нельзя сделать?
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 13:01     Как осуществляется вывод на экран в windows приложениях? #9
Цитата Сообщение от zalogic Посмотреть сообщение
как-то так... по аналогии почему нельзя сделать?
- предлагаю всё это осуществить для оконного приложения именно перегрузкой

Цитата Сообщение от zalogic Посмотреть сообщение
В теории можно просто передать указатель на этот самый компонент или контрол и уже егов операторе использовать.
Такого не делал конечно на практике, но для мозголомства можно попробовать в принципе.
Там такой код будет что программисты накодившие студию в шок прийдут
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,508
16.09.2011, 13:49  [ТС]     Как осуществляется вывод на экран в windows приложениях? #10
-=ЮрА=-, эээ, ну мне как-бы вовсе 5 лабу делать и сдавать через месяц-два, у меня лишь вопрос в том как мне поступить сейчас: делать вывод в консоль в 1 лабе, сдавать её и не хитрить, а потом когда сдавать 5 лабу переделать первую или же сейчас делать хитрую функцию для печати уже в первой лабе (как я уже предлагал чтобы функция принимала поток ostream, ну как вот написал zalogic), у меня в частности это будет что-то типа
C++
1
void printAll(ostream &, bool flag);
и потом при сдаче 5ой уже ничего не переделывать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2011, 14:02     Как осуществляется вывод на экран в windows приложениях?
Еще ссылки по теме:

Почему вывод аргументов не осуществляется для классового шаблона? C++
C++ Как осуществить прорисовки и анимацию в консолевских приложениях?
Как осуществляется поиск символа в строке? C++

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

Или воспользуйтесь поиском по форуму:
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 14:02     Как осуществляется вывод на экран в windows приложениях? #11
Цитата Сообщение от Gepar Посмотреть сообщение
делать вывод в консоль в 1 лабе
- конешно делай всё в консоли, если 5-е задание как бы объединяет все предшествующие + окошко надо, то на основе твоих кодов сделаю норм MFC проект
Yandex
Объявления
16.09.2011, 14:02     Как осуществляется вывод на экран в windows приложениях?
Ответ Создать тему
Опции темы

Текущее время: 15:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru