Class & Timer

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Niko
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 102
Зарегистрирован: 16.03.2006 (Чт) 14:43

Class & Timer

Сообщение Niko » 10.04.2007 (Вт) 10:46

Добрый день!
задача такая.
есть некий класс Class1
у которого есть свойства A и B as long
Class1.A - промежуток времени
Class1.B - величина которая увеличивается на 1 за промежуток времени Class1.A
у меня есть такой массив:
dim C1() as Class1
кол-во элементов я зарание незнаю, у всех элементов значение С1().A разное
Можно ли реализовать данную задачу только процедурами класса/модуля, не трогая основной программный код?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 10.04.2007 (Вт) 10:52

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

Niko
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 102
Зарегистрирован: 16.03.2006 (Чт) 14:43

Сообщение Niko » 10.04.2007 (Вт) 11:12

Dim C1() As Class1

Private Sub Command1_Click()
for i=1 to 10
ReDim Preserve C1(i)
Set C1(i) = New Class1
C1(i).a=i
C1(i).start 'начинаем отсчет
End If
End Sub

Private Sub Command2_Click()
For i = 1 To 10
List1.AddItem C(i).B
Next i
End Sub

при клике на Command2 заполнится List2 значениями C1(n).B
значение С1(n).B начинает увеличиваться на 1 с момента выполнения процедуры start каждые C1(n).T секунд.
Вопрос в том как это организовать.

CodeName33
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 297
Зарегистрирован: 01.09.2004 (Ср) 13:25
Откуда: SPb

Сообщение CodeName33 » 10.04.2007 (Вт) 11:22

Niko, ну либо API Timer использовать, но модуль вроде как нужен, либо создавать Таймер из класса через Controls.Add, но для этого ещё и форма нужна, или использовать Forms(0)...
Программисты не глючат - глючат компиляторы...

Niko
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 102
Зарегистрирован: 16.03.2006 (Чт) 14:43

Сообщение Niko » 10.04.2007 (Вт) 11:42

спасибо.
вроде будет проще запоминать время когда была выполнена C1(n).start и при вызове C1(n).B вычилсять это значение в зависимости от текущего времени и C1(n).T


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 103

    TopList