Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Slider, ProgressBar



Slider изображен на картинке внизу. Его действие и свойства (Min, Max, SmallChange, LargeChange, Value) аналогичны действию и свойствам полосы прокрутки HScrollBar.

ProgressBar в двух видах изображена сверху. Вы наверняка видели такую при инсталляции программ. Зачем она нужна? Пусть ваша программа запускает длительный процесс, во время которого на экране ничего не происходит (например, считывает информацию из 400 файлов). У пользователя может возникнуть тревожное ощущение, что программа зависла. Чтобы этого ощущения не было, вы можете выдать на экран текст "Я занята. Подождите минутку.", которое пропадет, когда дело сделано. Но опять же, пока дело делается, этот текст так долго и неподвижно красуется посреди экрана, что в душу опять закрадываются подозрения. Гораздо лучше создать ProgressBar, полоса которой после считывания информации из каждого файла будет продвигаться на 1/400 часть длины ProgressBar. Поскольку компьютер работает быстро, у пользователя создастся впечатление, что полоса плавно ползет направо. А раз движение есть, значит компьютер не завис! К тому же можно в процессе работы примерно представлять, какая часть ее выполнена.

Свойства ProgressBar - Min, Max - аналогичны свойствам полосы прокрутки. Внешний вид определяется свойством Scrolling.

Для иллюстрации сказанного создайте проект. Разместите элементы управления, как на картинке. Установите свойство Max слайдера в 50, у остальных - в 100. Запустите следующие процедуры:

Private Sub Command1_Click()

For a = 0 To 40 Step 0.01

ProgressBar1 = a

Next

End Sub

Private Sub Command2_Click()

For a = 0 To 80 Step 0.1

ProgressBar2 = a

Next

End Sub

Private Sub Command3_Click()

For a = 0 To 30 Step 0.001

Slider1 = a

Next

End Sub

Во время выполнения процедур полосы и бегунок слайдера движутся. Если движение слишком быстрое или слишком медленное, измените шаг цикла. На картинке вы видите состояние элементов управления после того, как процедуры отработали.

В реальной задаче о копировании 400 файлов вы могли бы сделать так, чтобы при закрытии очередного файла вызывалась процедура пользователя, продвигающая чуть-чуть полосу.





Дата публикования: 2014-12-28; Прочитано: 219 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...