Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94

Написать программу, управление линией по кнопке

07.04.2018, 12:33. Показов 2120. Ответов 15

Студворк — интернет-сервис помощи студентам
На VB 5.0 пожалуйста

Используемые компоненты: кнопка и линия

Реализовать при щелчке по кнопке линия перемещается в новое положение в пределах формы, при этом координаты линии определяются случайными числами, а также случайным образом меняется цвет линии и ее толщина.

Помогите написать программу.

Добавлено через 48 минут
я тут что то пытался сделать ну видима не до конца понял, линия меняет цвет,размер но двигается только в низ по диагонали

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub cmdLine_Click()
Dim x, g As Integer
 
x = Rnd * 200
y = Rnd * 255
g = Color
 
 
Line1.X1 = Line1.X1 - x
Line1.X2 = Line1.X2 + x
Line1.Y1 = Line1.Y1 + y
Line1.Y2 = Line1.Y2 + y
Line1.BorderColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256)
 
End Sub
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.04.2018, 12:33
Ответы с готовыми решениями:

Написать программу, которая вычерчивает окружность зеленой линией в центре экрана
1. Написать программу, которая вычерчивает окружность зеленой линией в центре экрана

COM порт - управление линией RTS
Добрый день! Есть такая задача - передать данные в порт и сразу за последним байтом поднять линию RTS. (Она переключает передачу и прием...

Написать программу для Arduino, управление 2 реле
Имеется 2 реле, кнопка, насос и свеча. Насос управляется одним реле, свеча другим. При нажатии кнопки напряжение 5В поступает на реле, к...

15
Заблокирован
07.04.2018, 13:21
1. Поставьте в начало программы
RANDOMIZE TIMER
2. Надо изменять не только x и y, а координаты обоих концов линии.
то есть x1, y1, x2, y2
3. чтобы линия не двигалась только в одну сторону, надо задавать
и Отрицательный прирост координат, то есть типа
x1 = 200 * Rnd - 100 (и остальное также)
0
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
07.04.2018, 14:12  [ТС]
ili1, а как и где нужно прописать чтобы линия не выходила за границы формы и если вдруг до ходила до одного конца формы выходила из любого другого?

мне кажется я не верно понял ?
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub cmdLine_Click()
Dim x, y, g As Integer
Randomize Timer
x = Rnd * 100
y = Rnd * 250
g = Color
 
Line1.X1 = Line1.X1 + 200 * Rnd - 150
Line1.X2 = Line1.X2 - 200 * Rnd - 150
Line1.Y1 = Line1.Y1 + 250 * Rnd - 25
Line1.Y2 = Line1.Y2 - 250 * Rnd - 20
Line1.BorderColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256)
 
End Sub
Добавлено через 17 минут
ili1, может вы сами напишите пожалуйста код, а то я долго буду разбираться, что где написать

Добавлено через 5 минут
ili1, Пожалуйста. Ну если возможно частично с комментариями ?
0
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
07.04.2018, 14:46  [ТС]
Помогите написать программу

При щелчке по кнопке линия перемещается в новое положение в пределах формы(доходя до границы отскакивает), при этом координаты линии определяются случайными числами, а также случайным образом меняется цвет линии и ее толщина.

На visual basic 5.0
0
Заблокирован
07.04.2018, 17:31
Visual Basic
1
2
3
4
5
6
7
8
9
Private Sub cmdLine_Click()
Randomize
Line1.X1 = Width * Rnd'координаты линии определяются случайными числами
Line1.Y1 = Height * Rnd'координаты линии определяются случайными числами
Line1.X2 = Width * Rnd'координаты линии определяются случайными числами
Line1.Y1 = Height * Rnd'координаты линии определяются случайными числами
Line1.BorderColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256)'случайным образом меняется цвет линии.
Line1.BorderWidth = Rnd * 9+ 1'случайным образом меняется толщина.
End Sub
1
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
07.04.2018, 17:52  [ТС]
Остап Бонд, спасибо, а как прописать и где чтобы линия не выходила за границы формы?
0
Заблокирован
07.04.2018, 17:59
Цитата Сообщение от 777 Посмотреть сообщение
как прописать и где чтобы линия не выходила за границы формы?
А она разве выходит?
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
07.04.2018, 18:41
Цитата Сообщение от 777 Посмотреть сообщение
При щелчке по кнопке линия перемещается в новое положение в пределах формы(доходя до границы отскакивает)
Как это, как это ?
Отскакивать она может только если движется. А если она просто появляется каждый раз в новом положении, то как она отскочит ?
0
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
07.04.2018, 19:01  [ТС]
Остап Бонд, иногда да
Миниатюры
Написать программу, управление линией по кнопке  
0
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
07.04.2018, 19:10  [ТС]
SoftIce,извиняюсь не правильно изъяснил мысль, ну что бы линия не выходила за границы формы
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
07.04.2018, 21:28
Цитата Сообщение от 777 Посмотреть сообщение
иногда да
Нужно учесть высоту заголовка. Она в твипах, сейчас точно не вспомню сколько.
0
Заблокирован
07.04.2018, 21:36
777, надеюсь 6-ю строку догадались исправить?
Line1.Y12 = Height * Rnd'координаты линии определяются случайными числами
0
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
08.04.2018, 18:29  [ТС]
SoftIce, и как мне посчитать твипы если размер формы (Width=12435, Heigh=6315).
Миниатюры
Написать программу, управление линией по кнопке  
0
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
08.04.2018, 18:31  [ТС]
Остап Бонд, исправил еще давно, спасибо что заметил. Может ты знаешь как ограничить границы для лини чтобы она не выходила за грани формы ?

Добавлено через 56 секунд
Я кажется чуть понимаю, нужно поставить условие на координаты объекта, чтобы они не были больше, чем размер формы, но не знаю как это прописать.
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
08.04.2018, 21:02
777,
Visual Basic
1
2
3
4
5
6
7
8
9
Private Sub cmdLine_Click()
Randomize
Line1.X1 = ScaleWidth * Rnd 'координаты линии определяются случайными числами
Line1.Y1 = ScaleHeight * Rnd  'координаты линии определяются случайными числами
Line1.X2 = ScaleWidth * Rnd 'координаты линии определяются случайными числами
Line1.Y2 = ScaleHeight * Rnd   'координаты линии определяются случайными числами
Line1.BorderColor = RGB(Rnd * 256, Rnd * 256, Rnd * 256) 'случайным образом меняется цвет линии.
Line1.BorderWidth = Rnd * 9 + 1 'случайным образом меняется толщина.
End Sub
0
0 / 0 / 1
Регистрация: 01.05.2014
Сообщений: 94
08.04.2018, 22:19  [ТС]
Остап Бонд, SoftIce, СПАСИБО БОЛЬШОЕ ВАМ
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.04.2018, 22:19
Помогаю со студенческими работами здесь

Написать программу, моделирующую управление каталогом в файловой системе
Доброго времени суток! вот есть такое задание: Написать программу, моделирующую управление каталогом в файловой системе. Для каждого...

Написать программу, имитирующую работу клавиатуры. Управление производится мышью
Здравствуйте, форумчане, очень нужна ваша помощь. В матлабе, можно сказать, пока что нуб, но хоть умри, но надо сделать задание: ...

Написать программу для семисегментного индикатора, чтобы при отжатой кнопке горел символ L, а при нажатой П
Atmega 16, AtmelStudio. Индикатор с общим анодом, кнопка на PC5, на PC6 неизвестное устройство,которое нельзя трогать. Я использовал...

Два текстовых блока в кнопке. Управление их содержимым
Есть обычная кнопка, внутри которой два текстовых блока: <Button Name="but" Height="40" Width="40"...

Написать любую программу для предприятия под названием "управление благоустройсва города"
Нужно написать любую программу для предприятия под названием "управление благоустройсва города"... Подскажите что нибудь... ничего...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru