Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Английский язык для начинающих. Грамматика английского языка для начинающих Интенсив
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование информационно-поисковой библиографической системы на gpss ...
Моделирование интернет кафе на GPSS + Отчет
Сравнение двух бинарных деревьев на Turbo Pascal + отчет

Программа рисования [Microsoft Visual Studio C++]
2. Запустите среду Microsoft Visual Studio C++ и создайте новый проект на основе шаблона MDI приложения. Для этого выберете пункты меню File-New и в окне конструктора проектов выберете тип проекта MFC AppWizard(exe). В следующем окне выберете тип приложения Multiple documents.
3. Добавьте в класс, порожденный от класса CDocument следующие элементы:

POINT ppt[1000]; //Массив координат отрезков прямых для рисования
int NumPoints; //Количество координат в массиве
COLORREF COLOR; //Цвет линий




4. В конструкторе класса, порожденного от класса CDocument проинициализируйте значение переменной NumPoints=0;. Задайте цвет линий, например COLOR=RGB(255,0,0);.
5. В функции OnDraw класса, порожденного от CView добавьте следующие строки:

CPen Pen(PS_SOLID,1,pDoc->COLOR);
pDC->SelectObject(&Pen);
for (int i=0;i < pDoc->NumPoints;i++) pDC->LineTo(pDoc->ppt[i]);




Данная функция формирует изображение в окне просмотра документа.
6. Добавьте в класс, порожденный от CView функцию-обработчик сообщения WM_LBUTTONDOWN (используйте ClassWizard или контекстное меню Add Windows Message Handler). Добавьте в данную функцию следующие строки:

C<имя проекта>Doc*pDoc=GetDocument(); //Получение указателя на объект документа
pDoc->ppt[pDoc->NumPoints++]=point; //Запоминание координаты курсора мыши
pDoc->UpdateAllViews(0); //Обновление содержимого окна просмотра




Данная функция вызывается когда пользователь щелкает мышью в окне просмотра, при этом программа запоминает координаты щелчка в массиве ppt.
7. Модифицируйте функцию Serialize класса, порожденного от CDocument. Для сохранения файла (в блоке if (ar.IsStoring())) добавьте строки:

ar << NumPoints; //Сохранение в файле количества точек
for (int i=0;i < NumPoints;i++) ar << ppt[i]; //Сохранение в файле координат точек




а для чтения файла добавьте строки

ar >> NumPoints; //Чтение из файла количества точек
for (int i=0;i < NumPoints;i++) ar >> ppt[i]; //Чтение координат точек



8. Откомпилируйте программу. В результате выполнения должно появиться окно программы, показанное на рис.1.

Рис.1. Окно программы

Если щелкать мышью в окне просмотра документа, то на экране должны рисоваться линии в координатах курсора мыши (рис.1). В программе можно создать несколько документов и нарисовать несколько разных рисунков. Можно добавить дополнительное окно просмотра посредством выбора пунктов меню Window-New Window и отслеживать изменения в обоих окнах одновременно. Рисунки можно сохранить на диске посредством выбора пунктов меню File-Save.
Проверьте работу программы создав несколько разных документов, сохраните их а затем откройте. Также автоматически должна стать доступна функция печати документа (если на компьютере установлен принтер).
Опубликовал Kest June 01 2009 19:52:48 · 0 Комментариев · 14962 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Игра в крестики н...
Библиотека програ...
IIIDTrans
Панель Календарь
Дешифратор содерж...
Java 2. Наиболее ...
Assembler. Учебни...
Delphi 2005 для W...
Х. М. Дейтел, П. ...
Панель Наша Кнопка
LaserTank [Исходн...
Win-Prolog 3.618
45 уроков по дельфи
Алгоритмы шифрова...
SODA [Исходник на...
PHP: обучение на ...
Autorunner
Задача о 8ми ладьях
Preview
Delphix Sample [И...

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14238
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Обработка транзакц...
Технические средст...
Нерегулярные связа...
Разработать прикла...
Еще один замечател...
Новый клиент Outlo...
Сроки службы серти...
Работа с адресами ...
Операции записи да...
Язык С: преобразов...
Разработка инфогра...
Функции GetX и Get...
9.4. Принципы
Эвакуатор Краснодар
Импорт статических...
Определить количес...
ГЛАВА 8. ОТЛАДКА ...
Бизнес-модели инте...
Приходящий системн...
Описание сообщений...
Сколько это может ...
Промежуточный вари...
Слоты 777
Первый служит для ...
Простая программа ...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?