Страница: 1 |
Люди помогите пожалуйста. У меня есть ListBox. В нем 10-20 строчек. Мне нужно, начиная с первой "потехоньку" загружать в TextBox по одной строчке: загрузил одну, что-то сделал, загрузил другую и тп(например по клику кнопки).Никто не знает что можна сделать?
Private Sub Command1_Click Dim I As Long For I = 0 To List1.ListCount - 1 Text1.Text = Text1.Text & List1.List(I) & vbCrLf Sleep 5 Next I End Sub Private Sub Sleep(Seconds as Single) Dim Start As Single Start = Timer While (Timer - Start) < Seconds: DoEvents: Wend End Sub Егор большое спасибо!!! Как всегда забыли про По-моему этот код будет жрать весь проц пока выжидает паузу. От себя могу посоветовать либо Sleep, либо таймер... <Егор большое спасибо!!!> Всегда рад, Hi! <По-моему этот код будет жрать весь проц пока выжидает паузу.>Этот код работает также как таймер: сначала запоминает "время вызова" затем цикл пока (время - время вызова) меньше (время паузы). В цикле вызывается функция DoEvents, которая перемещает управления на ядро операционной системы. Управление в программу возвращяется, только когда все программы выполнили "по одной" команде. <От себя могу посоветовать либо Sleep, либо таймер...> Этот код работает так же как таймер (см. выше). Sleep - такой команды в VB нет. Есть такакя API-функция. Мне лично нравится когда я все делаю сам. Библеотека msvbvm60.dll не в счет - ссылки на нее нельзя удалить из проекта. 2Егор Суворов, любишь сам..., юзай АСМ, зачем те VB <По-моему этот код будет жрать весь проц пока выжидает паузу.>Этот код работает также как таймер: сначала запоминает "время вызова" затем цикл пока (время - время вызова) меньше (время паузы). В цикле вызывается функция DoEvents, которая перемещает управления на ядро операционной системы. Управление в программу возвращяется, только когда все программы выполнили "по одной" команде. Ядро ядром, но я испытал - данный вид паузы забивает весь проц до ста процентов. Для улучшения надо хотя бы рядом с DoEvents'ом добавить АПИшный Sleep. И почему тебе он не нравиться? Думаешь у кого-то не найдётся кёрнела или откуда она там 8)... <От себя могу посоветовать либо Sleep, либо таймер...> Этот код работает так же как таймер (см. выше). Sleep - такой команды в VB нет. Есть такакя API-функция. Мне лично нравится когда я все делаю сам. Библеотека msvbvm60.dll не в счет - ссылки на нее нельзя удалить из проекта. Он не работает также как таймер. Я имел ввиду такой код: <pre> private sub timer1_timer() Static i as long ' счётчик if i>=list1.listcount then i=0:timer1.enabled=false:exit sub text1=text1+vbcrlf+list1.list(i) end sub </pre> Вроде того... Такая система тихо мирно выжидает пока не пройдёт время паузы (интервал срабатывания таймера). Хоть минуту. 8) А система жрущая проц, во-первых делает скорость выполнения зависимой от производительности компа, а во-вторых кому ж приятно, если его проц нагружают простыми эффектностями, ради которых этот сабж и затеивался. 8)))))))))))))))))))) Пока! <И почему тебе он не нравиться?> Я просто знаю API-Sleep не так давно как этот код. <Думаешь у кого-то не найдётся кёрнела или откуда она там> кернел конечно есть у каждого. Страница: 1 |
Вопрос: Помогите
Добавлено: 15.05.04 19:26
Автор вопроса: Hi
Ответы
Всего ответов: 7
Номер ответа: 1
Автор ответа:
Yeputons
ICQ: 278444762
Вопросов: 71
Ответов: 179
Профиль | | #1
Добавлено: 15.05.04 19:42
Номер ответа: 2
Автор ответа:
Hi
Вопросов: 3
Ответов: 8
Профиль | | #2
Добавлено: 15.05.04 20:02
Номер ответа: 3
Автор ответа:
Neco
ICQ: 247906854
Вопросов: 133
Ответов: 882
Web-сайт:
Профиль | | #3
Добавлено: 16.05.04 17:28
Номер ответа: 4
Автор ответа:
Yeputons
ICQ: 278444762
Вопросов: 71
Ответов: 179
Профиль | | #4
Добавлено: 17.05.04 14:35
Номер ответа: 5
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #5
Добавлено: 17.05.04 22:54
Дык и там все равно под Win без АПИ не обойдешься, хотя... если поизвращаться то можно (yoda, Visit: y0da.cjb.net - kernel, kernel2)
Номер ответа: 6
Автор ответа:
Neco
ICQ: 247906854
Вопросов: 133
Ответов: 882
Web-сайт:
Профиль | | #6
Добавлено: 18.05.04 01:43
Номер ответа: 7
Автор ответа:
Yeputons
ICQ: 278444762
Вопросов: 71
Ответов: 179
Профиль | | #7
Добавлено: 18.05.04 11:53