Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Fragus
34 / 34 / 9
Регистрация: 16.09.2014
Сообщений: 134
1

Зацикливание программы при рисовании окружности

23.09.2014, 15:23. Просмотров 815. Ответов 1
Метки нет (Все метки)

vb.net
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Dim Граф As Graphics = CreateGraphics()
 
 
        Dim x, y As Integer
        x = 0
        y = 0
        Do Until x > 290
            Граф.DrawEllipse(Pens.Black, x, y, 20, 20)
            x = x + 30
            y = y + 20
        Loop
        Dim b, s As Long
        b = 0
        s = 192
        Do
            Граф.DrawEllipse(Pens.Black, b, s, 20, 20)
            b = b + 30
            s = s - 20
        Loop Until s = 276
Вот кодец.Суть программы: Рисовать крестом окружности.Вроде бы все работает но есть 2 ошибки:
1.Зацикливание.После того как все нарисовало программа остается без ответа(не работает кнопка,двигать нельзя форму)
2.Не знаю так и должно быть но рисование с левого нижнего угла до верхнего правого рисуется криво.Можете проверить.В середине окружности не сходятся.А расходятся на 5-9 пикселей.

Добавлено через 5 минут
А все.Понял свою ошибку
В окончании цикла (Until) поставил S а не B
vb.net
1
2
3
4
5
6
Do
            Граф.DrawEllipse(Pens.Black, b, s, 20, 20)
            b = b + 30
            s = s - 20
            '276
        Loop Until b > 276
Добавлено через 1 минуту
Теперь бы хотелось узнать как 2 "баг" пофиксить
2
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2014, 15:23
Ответы с готовыми решениями:

Перекрытие надписей при рисовании текста
Рисую текст в одну строчку в листбоксе Dim rectfont7 As New Font("arial", 7) ...

Выбор случайного цвета при рисовании объектов
prnt.DrawString("Н", nFont, Brushes.Red, 0, 0) меня интересует Brushes.Red...

Переворот букв при рисовании на 180 градусов
Есть такой код: Graph1.DrawString("A", DrawFont,...

Изменение цвета Pen и Brush при рисовании в PictureBox
Доброго времени суток. У меня есть код: g.DrawLine(Pens.Black, 0, z,...

Рисование стандартными графическими методами. Ошибка при рисовании линии
На форме командная кнопка (Button) и графическая область (PictureBox)....

1
Petr_S
196 / 197 / 87
Регистрация: 21.04.2013
Сообщений: 383
23.09.2014, 15:42 2
Лучший ответ Сообщение было отмечено Fragus как решение

Решение

Начальное значение s = 200
Даже ничего считать не надо - поставил точку остановки на строку 12 и посмотрел что в переменной y.

З.Ы. Переменные b и s лишние. Используйте x и y.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2014, 15:42

Paint: Сохранение точек для использования их при рисовании примитивов в дальнейшем
Здравствуйте! Я пишу аналог Paint-а. И у меня такая проблема. Я не знаю как...

Как правильно задать толщину пера при рисовании в масштабируемом графическом окне?
Всем здравствуйте. Приведенный ниже код взят с нашего форума, заранее...

Ошибки при запуске программы из другой программы - неверная рабочая директория
Вот у меня есть несколько программ написанных под VisualBasic.net. После...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru