Страница: 1 |
|
Вопрос: Много всяких вопросов
|
Добавлено: 08.10.03 17:30
|
|
Автор вопроса: GreenGo
|
Извините, если вопросы покажутся вам детскими, но я совем недавно стал учить VB. 1) мне нужно с помощью PSet вывести на экране точки, типа звездное небо. Координаты надо выводить с помощью цикла. Проблема состоит в том: в цикле я могу указать только одну переменную, например, только х. А как сделать цикл для у? 2) Опять же, с помощью цикла надо чтобы менялся цвет в текстовом окне. Ввожу такой код: Private Sub go1_Click() For x = 1 To 255 Step 1 Timer1.Enabled = True txt.BackColor = RGB(x, 0, 0) Next End Sub Не робит. 3) Прога "Угадывание чисел". Юзер вводит в поле лубую цифру от 1 до 9, ну и прога пишет, типа угадал или нет. Все просто, но нужно в обязательном порядке использовать знаки =, >, <. То есть выпало число 4, а в текстовом поле ввели "<5" - значит угадал. Вот для начала такие вопросики. Заранее спасибо!
Ответить
|
Номер ответа: 1 Автор ответа:
Swift
   
Вопросов: 5 Ответов: 43
|
Профиль | | #1
|
Добавлено: 08.10.03 20:33
|
1) если нужно звёздное небо, то наверное нужно использовать генератор случайных чисел, а не цикл сделай форму и положи на неё таймер Timer1: Private Sub Form_Load() Randomize Me.DrawWidth = 3 Me.Timer1.Interval = 100 '0.1c Me.Timer1.Enabled = True End Sub Private Sub Timer1_Timer() Dim X As Single, Y As Single Dim Xmax As Single, Ymax As Single Xmax = Me.ScaleWidth Ymax = Me.ScaleHeight X = CLng((Xmax * Rnd) + 1) Y = CLng((Ymax * Rnd) + 1) Me.PSet (X, Y), RGB(255, 0, 0) End Sub 2) опять, лучше используй не цикл, а таймер, чтобы прога не висла. А можешь и три  3) знаки надо обрабатывать отдельно, как строки
Ответить
|
Номер ответа: 4 Автор ответа:
GreenGo
   
Вопросов: 2 Ответов: 4
|
Профиль | | #4
|
Добавлено: 08.10.03 21:07
|
1 и 2) Дело в том, что надо !обязательно! сделать это с помощью циклов. 3) Ну вот я проверяю строчку с введенными данными. Выпало число 6. Юзер ввел ">5". Потом значит проверяется первый символ. Потом, понятное дело, вступает в дело if. Ну вот как я себе это представлю if firstletter = ">" then if x > randomDigit then... а что писать тут я не понимаю словами понимаю, а кодом - нет.... Попробовал вложенный цикл - не робит.
Ответить
|
Номер ответа: 6 Автор ответа:
Swift
   
Вопросов: 5 Ответов: 43
|
Профиль | | #6
|
Добавлено: 09.10.03 10:37
|
Какого результата ты хочешь добиться с помощью циклов? Переллельное наращивание X и Y? 2) всё работает, просто настолько быстро, что не успеваешь замечать. Вставь в цикл Doevents хотя бы, но и это не сильно поможет. Dim x As Integer For x = 1 To 255 Step 1 Me.Text1.BackColor = RGB(x, 0, 0) DoEvents Next тут надо использовать таймер вместе с циклом.
Ответить
|
Номер ответа: 7 Автор ответа:
GreenGo
   
Вопросов: 2 Ответов: 4
|
Профиль | | #7
|
Добавлено: 09.10.03 13:51
|
Вот реальные задачи: Создать программу, изменяющую цвета фона и символа в текстовом поле на инвертированные через постепенный переход цветов. Начальный цвет фона – синий, конечный – красный, начальный цвет символов – белый, конечный – зелёный. Создать на форме две кнопки. По нажатию одной должен меняться цвет фона текстового поля, по нажатию другой – цвет символов. Для задания цвета фона и цвета символа использовать функцию RGB(). Для систематических сигналов на изменение цвета использовать объект Timer. РАБОТА 1. Разработать интерфейс пользователя. 2. Для перехода цвета аргументы функции RGB() нужно изменять в цикле с определённым шагом. В отчёте привести алгоритм перехода цвета. Изменить программу так, чтобы цвет при первом щелчке на кнопке менялся в одном направлении, а при следующем щелчке – в обратном. В отчёте описать сущность требуемых изменений. именно цикл
Ответить
|
Страница: 1 |
Поиск по форуму