Вход/Регистрация
Программирование мобильных устройств на платформе .NET Compact Framework
вернуться

Салмре Иво

Шрифт:

//------------------------------------------------------

private void radioButton1_CheckedChanged(object sender, System.EventArgs e) {

//Если обновление данных в пользовательском интерфейсе осуществляется

//приложением, то мы не хотим обрабатывать его так же, как если бы

//это событие было запущено пользователем. Если это именно так,

//то выйти из функции без выполнения каких-либо действий.

if (m_userInterfaceUpdateOccuring == true) {

return;

}

//Подсчитать, сколько раз выполнена обработка данного события

m_radioButtonlChangeEventCount++;

#if EVENTINSTRUMENTATION

//Зарегистрировать наступление события

instrumented_logEventOccurrence("radioButton1.Change:" + //Событие

m_radioButton1ChangeEventCount.ToString + ":" + //Количество раз

radioButton1.Checked.ToString); //Значение

#endif

//-------------------------------------------------------------

//Событие щелчка на кнопке Button1

//Имитирует обновление пользовательского интерфейса программным

//кодом, что может приводить к запуску обработчика события

//-------------------------------------------------------------

private void button1_Click(object sender, System.EventArgs e) {

//Указать на то, что мы не хотим, чтобы обработчики сразу же

//обрабатывали события, поскольку мы обновляем

//пользовательский интерфейс.

//m_userInterfaceUpdateOccuring = true;

radioButton1.Checked = true;

textBox1.Text = "Hello World";

//Обновление пользовательского интерфейса завершено

m_userInterfaceUpdateOccuring = false;

}

//------------------------------------------------------------------

//Обработчик события изменения состояния элемента управления TextBox

//------------------------------------------------------------------

private void textBox1_TextChanged(object sender, System.EventArgs e) {

//Если обновление данных в пользовательском интерфейсе осуществляется

//приложением, то мы не хотим обрабатывать его так же, как если бы

//это событие было запущено пользователем. Если это именно так,

//то выйти из функции без выполнения каких-либо действий.

if (m_userInterfaceUpdateOccuring == true) {

return;

}

//Подсчитать, сколько раз выполнена обработка данного события

m_textBox1ChangeEventCount++;

#if EVENTINSTRUMENTATION

//Занести событие в журнал

instrumented_logEventOccurrence("textBox1.Change:" + //Событие

m_textBox1ChangeEventCount.ToString + ":" + //Количество раз

textBox1.Text.ToString); //Значение

#endif

}

private void buttonShowEventLog_Click(object sender, System.EventArgs e) {

#if EVENTINSTRUMENTATION

instrumentation_ShowEventLog;

#endif

}

Не допускайте, чтобы пользователю оставалось лишь догадываться о ходе выполнения приложения

Важным аспектом производительности приложения является его интерактивность. Наилучшим вариантом было бы полное отсутствие каких-либо задержек во взаимодействии пользователя с пользовательским интерфейсом, однако в некоторых случаях это оказывается просто невозможным. Если необходимо выполнить работу, результатов которой пользователь должен дожидаться в течение длительного времени, то следует приложить некоторые усилия к тому, чтобы сделать условия такого ожидания настолько комфортными, насколько это возможно. Считайте, что эта задача столь же важна, как и проектирование помещения, в котором пациенты вынуждены дожидаться своей очереди при посещении врача. Было бы замечательно, если бы к врачу можно было зайти вообще безо всякой очереди, но это не представляется возможным (Если вам известны исключения, дайте мне об этом знать!) Условия ожидания были бы значительно худшими, если бы не было человека в регистратуре, который делает отметку о вашем визите, если бы вам не сообщали, сколько примерно времени вам придется ждать, если бы окружающая обстановка не было комфортной или если бы вам не предоставляли возможность полистать или почитать какой-нибудь журнал, дабы скоротать время ожидания. Прекрасным и эстетически привлекательным элементом интерьера, помогающим занять ваше внимание, служит, в частности, аквариум. Многое дает и регистрация вашего прихода. Условия визита еще более улучшатся, если регистратор сообщит вам, как долго продлится ваше ожидание, а также предложит газету и прохладительный напиток, чтобы вы чувствовали себя более комфортно. (Опять-таки, если вам известна клиника, где именно так все и происходит, обязательно сообщите мне об этом.)

  • Читать дальше
  • 1
  • ...
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: