Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
 Аватар для MACHOMAN
54 / 30 / 4
Регистрация: 15.01.2014
Сообщений: 354

Стирание ранее нарисованных линий

10.10.2015, 11:33. Показов 902. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Господа этот код рисует окружность TextBox1+=1, как сделать чтобы при TextBox1-=1 линии стирались

VB.NET
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
Public Class Form1
    Dim x2 As Single, y2 As Single
    Dim x1 As Single, y1 As Single
    Dim blackPen As Pen
    Dim g As Graphics
    Private Sub nach1() Handles Me.Load
        TextBox1.Text = 0
    End Sub
    Private Sub nach() Handles MyBase.Paint
 
        ' должны получить доступ к объекту, позволяющему рисовать на форме - Graphics
        ' Он передается в параметре me
        g = Me.CreateGraphics
        ' Для рисования мы используем объект Pen размера 1 пиксель чёрного цвета
        blackPen = New Pen(Color.Red, 1)
        ' Далее, мы должны задать координаты линии
        x1 = 200
        y1 = 200
        x2 = 200
        y2 = 250
        'TextBox1.Text = 0
    End Sub
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim gr As Double
        gr = CDbl(TextBox1.Text)
        For i As Integer = 1 To 72
            gr = gr + 5
            x2 = x1 + 150 * System.Math.Sin(gr * System.Math.PI / 180)
            y2 = y1 + 150 * System.Math.Cos(gr * System.Math.PI / 180)
            ' Рисуем линию!
            g.DrawLine(blackPen, x1, y1, x2, y2)
        Next
    End Sub
End Class
Миниатюры
Стирание ранее нарисованных линий  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.10.2015, 11:33
Ответы с готовыми решениями:

Сохранение нарисованных линий в формате .dxf
Для сохранения векторных рисунков в .dxf формате посоветовали мне использовать библиотеку netDxf. однако после знакомства с данной...

Колорирование консольной кисти в WinAPI и стирание нарисованных символами элементов
Итак, уважаемые форумчане, всем привет. Выполняю четвертую л.р. по WinAPI по дисциплине "Операционные системы". Был написан...

получился ли треугольник из нарисованных линий
Допустим у нас случайным образом появляются как минимум 6 точек на игровом поле. Игроки поочерёдно их соединяют. Цвет линий у игроков...

6
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
10.10.2015, 12:51
Цитата Сообщение от MACHOMAN Посмотреть сообщение
как сделать чтобы при TextBox1-=1 линии стирались
Условие непонятно, это первое.
Второе
Цитата Сообщение от MACHOMAN Посмотреть сообщение
VB.NET
6
7
8
Private Sub nach1() Handles Me.Load
    TextBox1.Text = 0
End Sub
Проще задать свойству Text значение 0 в конструкторе форм (в окне свойств).
0
 Аватар для Petr_S
213 / 230 / 87
Регистрация: 21.04.2013
Сообщений: 404
10.10.2015, 20:14
Да, несколько непонятно.
Предположу два варианта:
1. Полностью стирать и перерисовывать исходя из новых условий.
2. "Замазывать" лишние линии цветом фона.
0
 Аватар для MACHOMAN
54 / 30 / 4
Регистрация: 15.01.2014
Сообщений: 354
10.10.2015, 21:32  [ТС]
Немного переделал. есть авто режим и ручное управление. Почему не работает кнопка минус(убирание линий) ?

VB.NET
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
49
50
51
52
53
54
55
56
57
58
Public Class Form1
    Dim x2 As Single, y2 As Single
    Dim x1 As Single, y1 As Single
    Dim blackPen As Pen
    Dim g As Graphics
    Dim gr As Double = 200
    Private Sub nach() Handles MyBase.Paint
        ' должны получить доступ к объекту, позволяющему рисовать на форме - Graphics
        ' Он передается в параметре me
        g = Me.CreateGraphics
        ' Для рисования мы используем объект Pen размера 1 пиксель чёрного цвета
        blackPen = New Pen(Color.BlueViolet, 1)
        ' Далее, мы должны задать координаты линии
        x1 = 200
        y1 = 200
        x2 = 200
        y2 = 250
    End Sub
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If gr = 600 Then Timer1.Stop() : Me.Refresh()
        gr += 1
        TextBox1.Text = gr
        For i As Integer = 1 To 1
            gr = gr + 0.5
            x2 = x1 + 150 * System.Math.Sin(gr * System.Math.PI / -180)
            y2 = y1 + 150 * System.Math.Cos(gr * System.Math.PI / -180)
            ' Рисуем линию!
            g.DrawLine(blackPen, x1, y1, x2, y2)
        Next
    End Sub
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Timer1.Start()
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        TextBox1.Text = gr
        For i As Integer = 1 To 1
            gr = gr + 1
            x2 = x1 + 150 * System.Math.Sin(gr * System.Math.PI / -180)
            y2 = y1 + 150 * System.Math.Cos(gr * System.Math.PI / -180)
            ' Рисуем линию!
            g.DrawLine(blackPen, x1, y1, x2, y2)
        Next
    End Sub
 
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        gr -= 1
        TextBox1.Text = gr
        For i As Integer = 1 To 1
            gr = gr + 1
            x2 = x1 + 150 * System.Math.Sin(gr * System.Math.PI / -180)
            y2 = y1 + 150 * System.Math.Cos(gr * System.Math.PI / -180)
            ' Рисуем линию!
            g.DrawLine(blackPen, x1, y1, x2, y2)
        Next
    End Sub
End Class
Миниатюры
Стирание ранее нарисованных линий  
Вложения
Тип файла: rar Стирание ранее нарисованных линий.rar (70.8 Кб, 7 просмотров)
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
11.10.2015, 11:15
Запустил программу, честно говоря не понял, как она должна работать. Что делают + и -?
0
 Аватар для MACHOMAN
54 / 30 / 4
Регистрация: 15.01.2014
Сообщений: 354
11.10.2015, 11:50  [ТС]
+ добавляет линии а - должен их убирать
0
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 2
21.11.2015, 14:27
А не проще будет каждый раз перерисовывать линии? Ведь мы заем их кол-во
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.11.2015, 14:27
Помогаю со студенческими работами здесь

Сериализация данных (произвольно нарисованных линий)
Доброго времени суток ! Есть код,который рисует линию(произвольную) .Как вывести данные о том,что нарисовалось в ввиде XML ? ...

Графический редактор - хранение нарисованных линий в массиве
Здравствуйте читающие. вот ссылка на предыдущую тему: https://www.cyberforum.ru/csharp-beginners/thread380142.html Появилась новая...

Стирание ранее заполненного DataSet и повторное заполнение. Нарушение отображения в DataGridView
Доброго времени суток, Господа. У меня возникла проблема, которую не могу решить уже не первый день... Вообщем есть БД, в ней есть...

Вывод на экран случайных эллипсов, линий, треугольников, прямоугольков, ромбов, линий, пикселей
вывод на экран случайных эллипсов, линий, треугольников, прямоугольков, ромбов, линий, пикселей и т.д

Приведите к каноническому виду уравнения линий второго порядка, установите тип этих линий и их расположение
приведите к каноническому виду уравнения линий второго порядка/ установите тип этих линий и их расположение. сделать схематический чертеж ...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru