Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
 Аватар для Delegat
106 / 16 / 4
Регистрация: 13.04.2009
Сообщений: 104

Удаление отдельно взятой нарисованной линии из формы

31.08.2012, 09:31. Показов 2079. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Есть PictureBox, в который необходимо нарисовать несколько линий. Это реализовано. Теперь необходимо выбирать одну из линий и удалять ее из формы. Подскажите, как это можно реализовать? Не могу разобраться.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.08.2012, 09:31
Ответы с готовыми решениями:

Запуск отдельно взятой формы
У меня есть проект, в котором порядка 12 форм. И вот когда я создаю новую форму, так нужно делать кнопку с ссылкой на форму чтобы...

Защита паролем отдельно взятой строки/столбца
Добрый день. Сижу слушаю видео-курс лекций по Акцессу. Прослушал начинающий, продолжаю слушать продвинутый. Полазал по форуму, но...

Про длину каждой отдельно взятой строки в текстбоксе
есть тектбокс мультилайн в который я вставляю к примеру 5 строк различной длины Сильно туплю, как определить конец строки? если взять...

5
Темная сторона .Net
 Аватар для Noob.net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
31.08.2012, 09:40
нужно запоминать линии и зарисовывать их
0
 Аватар для Delegat
106 / 16 / 4
Регистрация: 13.04.2009
Сообщений: 104
31.08.2012, 09:43  [ТС]
Была такая идея. Но такая реализация мне кажется не совсем по фэн-шую ) Можно ли сделать эти линии как контролы?
0
Заблокирован
31.08.2012, 10:10
Цитата Сообщение от Delegat Посмотреть сообщение
Есть PictureBox, в который необходимо нарисовать несколько линий. Это реализовано.
Значит у вас есть коллекция линий(<List>), которые отрисовываются в OnPaint.
Кликнули мышкой в точке Р(x,y). Перебираете в цикле все линии, строите для каждой уравнение линии по двум точкам которые есть, например, вида ax+by+c=0, подставляеете туда координаты точки Р. Если равенство выполняется, удаляете линию. Перебирайте циклом for с конца.

Но подозреваю, что у вас там отрезки, тогда def:
Если сумма расстояний между A-C и B-C равна расстоянию между A-B то точка лежит на отрезке.

Как-то так.

Цитата Сообщение от Delegat Посмотреть сообщение
Была такая идея. Но такая реализация мне кажется не совсем по фэн-шую ) Можно ли сделать эти линии как контролы?
Можно.
0
Темная сторона .Net
 Аватар для Noob.net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
31.08.2012, 10:41
Цитата Сообщение от Delegat Посмотреть сообщение
Можно ли сделать эти линии как контролы?
Лучше зарисовывать. Как объекты это к WPF
0
 Аватар для Delegat
106 / 16 / 4
Регистрация: 13.04.2009
Сообщений: 104
03.09.2012, 09:08  [ТС]
Не получается сделать контрол. Что я не правильно делаю?

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
    public partial class RouteLine : UserControl
    {
        private GraphicsPath _outline = new GraphicsPath();
        private Color _linecolor = Color.Red;
        private int _border = 2;
 
 
        public Color LineColor
        {
            get { return _linecolor; }
            set { _linecolor = value; }
        }
 
        public int LineBorder
        {
            get { return _border; }
            set { _border = value; }
        }
 
        public RouteLine()
        {
            Point firstpoint = new Point(0, 0);
            Point secondpoint = new Point(50, 50);
            drawLine(firstpoint, secondpoint);
        }
 
        public RouteLine(Point firstpoint, Point secondpoint)
        {
            drawLine(firstpoint, secondpoint);
        }
 
        protected override void OnPaint(PaintEventArgs pe)
        {
            Pen p = new Pen(_linecolor, _border);
            pe.Graphics.DrawPath(p, this._outline);
            this.Region = new Region(this._outline);
            p.Dispose();
 
            base.OnPaint(pe);
        }
 
 
        private void drawLine(Point firstpoint, Point secondpoint)
        {
            this.Location = firstpoint;
            _outline.AddLine(firstpoint, secondpoint);
        }
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.09.2012, 09:08
Помогаю со студенческими работами здесь

Изменение стиля текста в отдельно взятой ячейке ListView
Народ, подскажите, плиз, как реализовать следующее: Имеется ListView с тремя ячейками, в которых указаны текстом дни рождения. Вопрос №...

Как подключить JavaScript на отдельно взятой странице без плагина?
Необходимо разместить скрипт только на одной странице сайта для подсчёта результатов теста. &lt;input type=&quot;button&quot;...

Вычислить координаты нарисованной линии
Здравствуйте! Весь инет облазил и не могу найти не одного примера вычисления координат начерченной линии. Нашёл только пример, как...

Подсчет длины нарисованной линии
Рисую произвольную линию на pictureBox с помощью MouseMove зажатой лкм. Считываю координаты курсора xxx...

TChart, изменить цвет уже нарисованной линии
Почему не срабатывает: // Изменить цвет уже нарисованной линии Series1-&gt;SeriesColor = clLime; Series1-&gt;Repaint();


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru