У меня есть ярлык на заставке, который отображается в течение 4 секунд. Я пытаюсь сделать ярлык отображающим процесс загрузки в процентах. Очевидно, это просто показать пользователю, что программа фактически запускается, а не фактически «загружает» что-либо. Есть ли способ, с помощью которого на этикетке может отображаться процент (от 1% до 100%) в течение 4 секунд? Немного потерял, как это сделать.C# - Загрузка дисплея 1-100% в течение 4 секунд
ответ
Поместите элемент управления Timer в форму и установите для свойства Interval значение 40 и его свойство Enabled равным true. Создайте переменную формы уровня, как это:
private int _Progress = 0;
В случае Tick таймера, поместить этот код:
if (_Progress < 100)
{
_Progress++;
label1.Text = _Progress.ToString() + "%";
}
else
{
timer1.Enabled = false;
}
Таймеры на самом деле не с точностью до миллисекунды, так что это не будет принимать именно 4 секунды, но он выполнит эту работу.
Проблема в том, что ваше решение требует, чтобы программа работала, и он хочет что-то, что показывает, что программа загружается, пока она фактически находится в процессе запуска. –
@ Джеймс: серьезно? Сделайте заставку в неуправляемом C++? Гаубицы, как правило, создают большой беспорядок, когда вы используете их на мышах. :) – MusiGenesis
@Nate: это, вероятно, означает, что на самом деле требуется всего 1,6 секунды для загрузки вашей основной формы. – MusiGenesis
Предполагая, что вы говорите, что WinForms (а не WPF), самым простым способом будет контроль таймера. Установите тайм-аут на 40 мс (4 с = 4000 мс 4000 мс/100 обновлений = 40 мс). Создайте целое число на уровне класса для отслеживания прогресса. Тогда ваш код события OnTick будет выглядеть примерно так ...
if(progress < 100)
{
progress++;
progessLabel.Text = String.Format("Loading... Progress: {0}%", progress);
}
else
{
timer.Enabled = false;
}
Это * deja vu * сначала! – MusiGenesis
таймер с заданным интервалом, чтобы сказать 100 миллисекунд будет самый простой подход. Держите подсчет количества раз, когда вы вызываете событие таймера, и обновляйте индикатор выполнения на 2,5 процента каждого тика.
Хотя это сработает, я бы сказал, что индикатор прогресса не идеален для этой ситуации. Вместо этого просто анимационная графика будет лучше, поскольку она дает указание, что ваша программа запускается, но не вводит в заблуждение, как индикатор выполнения.
Я думаю, что Microsoft регулярно совершает эту ошибку при использовании ошибочных индикаторов выполнения в определенных приложениях.
Netscape использовал это с индикатором выполнения, который прокладывал весь путь вправо, а затем поворачивался и начинал двигаться назад влево и т. Д. До тех пор, пока выполнялась загрузка (что обычно было часами назад в 90-х годах). – MusiGenesis
- 1. кнопки дисплея в течение нескольких секунд, а затем сбросить экран
- 2. C# Показать TextBox в течение нескольких секунд
- 3. Abort DownloadFileAsync, если загрузка не выполняется в течение 30 секунд
- 4. Javascript щелкнул и не нажал в течение 4 секунд
- 5. Проблема с треугольными номерами .... показать в течение 4 секунд
- 6. Large Gridview 1100/1100 на android
- 7. Задержка запуска функции в течение 3 секунд?
- 8. данные дисплея каждые 10 секунд в Android
- 9. андроид вибрационные только в течение 15 секунд
- 10. Показать диалоговое окно в течение нескольких секунд
- 11. остановить выполнение скрипта в течение n секунд
- 12. Остановка анимированный GIF в течение 5 секунд
- 13. Учетная запись в течение нескольких секунд
- 14. Выход дисплея 4 в строке
- 15. На дисплее клика Div, внутри этого Div-дисплея Div1 в течение 3 секунд, затем скройте
- 16. Подключения Mysql в течение нескольких секунд
- 17. Javascript + Запуск функции в течение X секунд
- 18. задержки установления TCP в течение 3 секунд
- 19. Диалоговое окно дисплея через 5 секунд
- 20. C# Выключение системы после удержания да в течение 5 секунд
- 21. Как добавить точность в течение 2 секунд C#
- 22. сделать куб скрытым в течение нескольких секунд и отобразить его снова в течение секунд.
- 23. C# SerialPort с Moxa Uport 1100
- 24. Delay Javascript функции в течение нескольких секунд
- 25. UIButton actionafter удерживается в течение x секунд
- 26. отображать сообщение предупреждения в течение 5 секунд
- 27. as3, функция активна в течение 3 секунд
- 28. Клавиатура зависает в течение нескольких секунд
- 29. Как отключить кнопку в течение 30 секунд
- 30. Blink imageView в течение нескольких секунд
Но разве это не зависит от производительности компьютера? Я имею в виду, что даже если ваш экран заставки говорит «Завершено», потому что вы используете фиксированное время, ваша основная форма не может быть завершена в то время. – Tarik
Ну, это на самом деле менее вероятно, произойдет в быстрых компьютерах текущего времени. – Tarik