|
0 / 0 / 0
Регистрация: 20.11.2019
Сообщений: 6
|
|||||||||||
.NET 4.x Графический редактор C#20.11.2019, 22:52. Показов 10411. Ответов 3
Здравствуйте, задали такое задание, написать графический редактор, писать надо с элементами ООП, то есть показать наследование, программа должна состоять из нескольких классов и т. д. Так вот, проблема в том что у меня есть класс формы
Класс квадрата:
0
|
|||||||||||
| 20.11.2019, 22:52 | |
|
Ответы с готовыми решениями:
3
Графический редактор Графический редактор Графический редактор на С# |
|
135 / 130 / 60
Регистрация: 16.06.2013
Сообщений: 527
|
|
| 24.11.2019, 04:34 | |
|
Сударь, как вы вообще умудрились до курсового доучиться? Сделанные косяки выдают полное непонимание предмета работы. Я даже не знаю с чего начать перечисление ошибок. У вас сам принцип использования классов некорректен.
1. Снести всё уже написанное - это лютая дичь. 2. Сесть за тетрадку, и нарисовать общую схему классов проекта - какие они будут, где будут использоваться, зачем они нужны, кому будут наследовать, и от кого будут наследоваться. А, раз уж задание такое расплывчатое - извращаться можно по максимуму. Чисто навскидку: - Создаём класс Figure. Он будет содержать базовые параметры, такие как координаты, высоту и ширину фигуры. Ещё можно добавить цвет заливки и цвет обводки. - От него наследуем классы разных конкретных фигур - круга, линии, квадрата и т.п. Дочерние классы по сути будут просто отрисовывать на предоставленном полотне фигуру. - Создаём класс Canvas. Это будет полотно рисования, в котором будет список фигур и метод перерисовки. Плюс - методы добавления или удаления фигуры из списка. 3. В классе формы создаём и инициализируем экземпляр класса Canvas. Делаем всякие рюшечки для выбора фигуры цвета и т.п. Ну и дописываем само рисование, которое будет заключаться в добавлении фигуры в список, при отпускании кнопки мыши. Ну и перерисовку Canvas. То что написано выше - это крайне примерный план того как нужно эту задачу выполнять. А, ну и чисто вдогонку. Не рисуется квадрат у вас потому, что вы при каждой инициализации класса Square создаёте новый экземпляр формы (который просто не отображается, т.к. не был вызвае form.Show()), на котором и рисуете свой квадрат.
0
|
|
|
911 / 796 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
|
|
| 24.11.2019, 11:51 | |
Сообщение было отмечено Thero3 как решение
Решение
Thero3, почитайте эту тему: Ответы на 7 самых частых вопроса по WinForms а конкретнее пункт 2 там идёт повествование о 2 формах, но часть можно применить и в Вашем случае. Но как минимум если совсем много не переделывать то метод
DrawSquare должен принимать ссылку на форму в которой нужно рисовать, но никак эта форма не должна создаваться в заново в классе квадрата.
1
|
|
|
|
||
| 24.11.2019, 12:32 | ||
|
0
|
||
| 24.11.2019, 12:32 | |
|
Помогаю со студенческими работами здесь
4
Графический редактор Графический редактор Графический редактор Графический редактор Графический редактор Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
|
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
|
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
|
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию.
2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
|
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|