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

Сделать волну на ВБ6, например синусоид

15.03.2013, 19:35. Показов 2331. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
пожалуйста помогите сделать волну на ВБ6, например синусоид.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.03.2013, 19:35
Ответы с готовыми решениями:

пользователь выбирает в селекте например врача Иванова в другом селекте время например 9:00.Как сделать так чтобы когда пользователь в следующий ра
Есть селекты (один-время приёма, другой- имя врача ) пользователь выбирает в селекте например врача Иванова в другом селекте время...

В ВБ6 добавить поле
Здравствуйте Пробую так Set ObjectWord = GetObject(, "Word.Application") Set ObjectOpenWord = ObjectWord.ActiveDocument ...

картинку обьединить с метками в вб6
Друзья привет) помощь нужна) разместил на picturebox метки туда значения считываются, но при savepicture метки не видны... можно ли както...

7
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
15.03.2013, 20:41
Как это в итоге должно выглядеть?
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
15.03.2013, 21:49
Лучший ответ Сообщение было отмечено как решение

Решение

На форме -кнопка
Visual Basic
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
Option Explicit
Dim r As Single
 
Sub Draw(r)
Dim x As Single, y As Single, col As Long
    Cls
    For x = -8 To 8 Step 0.03
        y = 3 * Sin(x + r)
        'Circle (x - 1.5, y - 3), 0.05, vbBlue
        'Circle (x + 1.5, y + 3), 0.05, vbBlue
        col = RGB(Abs(y * 50), Abs(y * x), Abs(y * x * 20))
        Me.ForeColor = col
        Line (x - 1.5, y - 3)-(x + 1.5, y + 3)
    Next x
End Sub
 
Private Sub Command1_Click()
    Do
       If r > -6.28 Then r = r - 0.05: DoEvents Else r = 0
       Draw (r)
    Loop
End Sub
 
Private Sub Form_Load()
    Me.AutoRedraw = True
    Me.ScaleMode = 3
    Me.DrawWidth = 5
    Me.BackColor = vbWhite
    Me.Width = Screen.Width
    Me.Height = Screen.Height
    Scale (-10, 10)-(10, -10)
End Sub
 
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    End
End Sub
Миниатюры
Сделать волну на ВБ6, например синусоид  
9
15.03.2013, 22:09
Лучший ответ Сообщение было отмечено как решение

Решение

Не по теме:

Напрасно студенты ждут друга в пивной,
В науке без жертв не бывает
А синуса график волна за волной
На ось ординат набегает.

http://www.karaoke.ru/song/4922.htm

4
1 / 1 / 0
Регистрация: 22.10.2012
Сообщений: 65
16.03.2013, 16:34  [ТС]
спасибо, очень красивая программа, пожалуйста расскажите как работает этот цвет, как вы передумали.
0
1 / 1 / 0
Регистрация: 22.10.2012
Сообщений: 65
17.03.2013, 21:21  [ТС]
что это за функция DoEventes?

Добавлено через 4 минуты
как можно этот цвет создать с помощью Timer?
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
18.03.2013, 04:59
Цитата Сообщение от Элина Галстян Посмотреть сообщение
что это за функция DoEventes?
DoEvents()
Функция передает управление операционной системе для обработки событий и сообщений, ждущих в системной очереди и всех нажатий клавиш из очереди SendKeys. После обработки всех событий управление возвращается приложению(следующий за строкой DoEvents инструкции. Применяется для обеспечения возможности прерывания пользователем какой-нибудь длительной операции, выполняемой программой

Возвращаемое значение
Функция возвращает значение типа Integer, определяющих число открытых форм в Visual Basic, в других приложениях возвращается 0 .
Цитата Сообщение от Элина Галстян Посмотреть сообщение
как можно этот цвет создать с помощью Timer?
На форме таймер (кнопка не нужна).
Visual Basic
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
Option Explicit
Dim r As Single
 
Sub Draw(r)
Dim x As Single, y As Single, col As Long
    Cls
    For x = -8 To 8 Step 0.03
        y = 3 * Sin(x + r)
        'Circle (x - 1.5, y - 3), 0.05, vbBlue
        'Circle (x + 1.5, y + 3), 0.05, vbBlue
        col = RGB(Abs(y * 50), Abs(y * x), Abs(y * x * 20))
        Me.ForeColor = col
        Line (x - 1.5, y - 3)-(x + 1.5, y + 3)
    Next x
End Sub
 
Private Sub Form_Load()
    Me.AutoRedraw = True
    Me.ScaleMode = 3
    Me.DrawWidth = 5
    Me.BackColor = vbWhite
    Me.Width = Screen.Width
    Me.Height = Screen.Height
    Timer1.Interval = 50
    Timer1.Enabled = True
    Me.Scale (-10, 10)-(10, -10)
End Sub
 
Private Sub Timer1_Timer()
       If r > -6.28 Then r = r - 0.05: DoEvents Else r = 0
       Draw (r)
End Sub
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
18.03.2013, 05:10
Или можно так.

Но это для России.

На форме таймер.
Visual Basic
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
Option Explicit
Dim r As Single
Sub Draw(r)
Dim x As Single, y As Single, col As Long
     Cls
    For x = -3 To 3 Step 0.03
        y =  Sin(x + r) 
         Scale (-x / 2 - 10, 10)-(x + 9, -10 + y / 2)
         ForeColor = RGB(Abs(200 * (y / 3 + 1)), 0, 0)
         Line (x - 1, y - 3)-(x - 0.5, y - 1)
         ForeColor = RGB(0, 0, Abs(200 * (y / 3 + 1)))
         Line (x - 0.5, y - 1)-(x, y + 1)
         ForeColor = RGB(Abs(200 * (y / 3 + 1)), Abs(200 * (y / 3 + 1)), Abs(200 * (y / 3 + 1)))
         Line (x, y + 1)-(x + 0.5, y + 3)
    Next x
End Sub
 
Private Sub Form_Load()
     AutoRedraw = True
     ScaleMode = 3
     DrawWidth = 3
     Timer1.Interval = 50
     Timer1.Enabled = True
     Scale (-10, 10)-(10, -10)
End Sub
 
 
Private Sub Timer1_Timer()
    If r > -6.28 Then r = r - 0.05  Else r = 0
    Draw (r)
End Sub

Поправка.
В предыдущем коде DoEvents тоже не нужен
Миниатюры
Сделать волну на ВБ6, например синусоид  
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.03.2013, 05:10
Помогаю со студенческими работами здесь

Нарисовать синусоид
Необходимо что бы при нажатие по кнопке рисовалась синусоид на компоненте image !

Замена текста программой написанной на ВБ6
здравствуйте есть прога на ВБ6 она должна заменять например сз на Северо Западный район, II квартал но она у меня упорно заменяет на...

Детектирование синусоид в дискретной последовательности
Добрый день! Прошу прощения за мой дилетантский язык, но проблема в следующем: Есть участок дискретного сигнала. Этот сигнал...

Цикл для генерации нескольких синусоид
не могу реализовать цикл для генерации нескольких синусоид int i = 0; //будем суммировать к частоте для получения новой float summa =...

Как найти точки пересечения двух синусоид?
Есть две синусоиды вида: y = a + b*sin(c*x + d) a,b,c,d - постоянные. x - в заданном интервале, допустим от -10 до +10. Нужно найти...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru