| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > рисование мышью |
| Автор: Найли 19.4.2005, 18:20 |
| Подскажиет плиз план действий. Есть такое задание: Создать приложение TestGraphSDI с однооконным интерфейсом, позволяющее при движении "мыши" с нажатой левой клавишей рисовать в окне приложения геометрическими фигурами (прямоугольник или окружность). Параметры выводимой фигуры задаются при помощи меню, как главного, так и появляющегося при нажатии правой кнопки мыши. Абсолютно не предсатвляю себе как это сделать =((( |
| Автор: Coocky 19.4.2005, 21:28 |
| Найли задание не сложное.Задай пожайлуста КОНКРЕТНЫЕ вопросы по поводу того,с чем у тебя проблемы.Здесь же все и сделаем |
| Автор: Step 20.4.2005, 13:21 |
| по нажатию клавиши фиксируешь одни координаты по отпусканию вторые координаты и вписываешь в прямоугольник ту фигуру которую хочешь например, для окружности можно первые координаты взять как центр, а через первые и вторые найти радиус по отпусканию вычисляешь все необходимое и отрисовываешь |
| Автор: Tneiro 20.4.2005, 14:26 |
| привет, надо сделать два обработчика событий в .н файле CPoint oldpoint; на нажатия кнопки мыши void CtestView::OnLButtonDown(UINT nFlags, CPoint point) { oldpoint=point; CView::OnLButtonDown(nFlags, point); } на отпускани кнопки мыши void CtestView::OnLButtonUp(UINT nFlags, CPoint point) { CClientDC ClientDC(this); CBrush brush(HS_CROSS,RGB(255,0,0)); CBrush *oldbrush; ClientDC.SelectObject(brush); ClientDC.SetBkColor(RGB(192,0,192)); ClientDC.Rectangle(oldpoint.x,oldpoint.y,point.x,point.y); ClientDC.SelectObject(&oldbrush); CView::OnLButtonUp(nFlags, point); } |
| Автор: Step 20.4.2005, 14:31 |
| Tneiro, людей надо заставлять думать, а не работать за них |
| Автор: Tneiro 20.4.2005, 14:54 |
| согласен, но я рассказал только про левую кнопку мыши, а про правую пусть сам |
| Автор: Coocky 21.4.2005, 10:57 |
| Найли если вас интересует эта тема,прошу еще раз-задайте вопрос-что вам не поняьно.Возможно начнем с нуля.Вот люди вам уже и код кидают.Только в концепции SDI он не подойдет. Tneiro Будь внимательным.Проект SDI-документ /представление.Не путай человека.Подход будет заключаться в другом. |
| Автор: Step 21.4.2005, 12:39 | ||
перевожу после некоторой модификации кода после отрисовки, будет совсем не плохо в документ сохранить параметры и тип фигуры что бы после переразвертывания все отрисовывалось вернее сохранить, а потом дать команду на перерисовку и он драв зазязать на отрисовку фигур по типу в цикле что бы все фигуры отрисовались Coocky, я тебя правильно понял..... |
| Автор: Coocky 21.4.2005, 20:12 |
| Step Конечно |
| Автор: Tneiro 25.4.2005, 13:25 |
| Coocky расскажите пожалуста в чем будет заключатся подход ? и в чем неправильность моего пожхода относительно SDI концепции документ/представления ? Coocky прочитай ещё раз про SDI ! Добавлено @ 13:30 www.hungryminds.com смотри пример BarsDemo. |
| Автор: shved 26.4.2005, 08:21 |
| МОгу прислать исходники такой программы мы вроде такое делали в универе |
| Автор: Gazon 26.4.2005, 20:18 |
| Вот. |