Режимы ввода
Режимы ввода
Первые модели сотовых телефонов для отправки сообщений имели только один режима ввода. Пользователь нажимал на кнопки телефона в определенном порядке, вводя тот или иной символ. Затем появились другие режимы. В частности, сейчас поддерживается числовой режим, так называемый режим T9 и символьный режим. Поначалу библиотека .NET Compact Framework не имела поддержки режимов ввода. Поэтому для установки необходимого режима программистам приходилось использовать механизм P/Invoke для вызова функций API, как показано в листинге 9.2.
Листинг 9.2
[DllImport("coredll.dll", EntryPoint = "SendMessage")]
private static extern uint SendMessage(IntPtr hWnd, uint msg,
uint wParam, uint lParam);
// Сообщение для режима ввода
const uint EM_SETINPUTMODE = 0x00DE;
// Перечисление режимов ввода
public enum InputModeAPI {
Spell = 0,
T9 = 1,
Numbers = 2,
Text = 3
}
public static void SetInputMode(Control ctrl, InputModeAPI mode) {
SendMessage(ctrl.Handle, EM_SETINPUTMODE, 0, (uint)mode);
}
private void mnuT9_Click(object sender, EventArgs e) {
SetInputMode(textBox3, InputModeAPI.T9);
}
private void mnuSpell_Click(object sender, EventArgs e) {
SetInputMode(textBox3, InputModeAPI.Spell);
}
private void mnuNumeric_Click(object sender, EventArgs e) {
SetInputMode(textBox3, InputModeAPI.Numbers);
}
private void mnuText_Click(object sender, EventArgs e) {
SetInputMode(textBox3, InputModeAPI.Text);
}
В данном примере нужный режим ввода указывается для текстового поля textBox3 с помощью системы меню (рис. 9.6).
Рис. 9.6. Выбираем режим ввода
ПРИМЕЧАНИЕ
Режим T9 в эмуляторе не работает, поэтому надо проверять код на реальном устройстве.
В библиотеке .NET Compact Framework 2.0 появилась возможность контролировать режим ввода текста с помощью класса InputModeEditor. Данный режим распространяется только на текстовые поля.
Предположим, что в программе есть два текстовых поля. В одном поле пользователь должен ввести свое имя, а во втором — номер телефона. В первом случае пользователь будет использовать буквы, а во втором случае ему необходимы только цифры. Поэтому можно заранее задать нужный режим ввода текста для разных текстовых полей. Для этого надо указать ссылку на сборку Microsoft.WindowsCE.Forms и задействовать класс InputModeEditor, как показано в листинге 9.3.
Листинг 9.3 Управление режимами ввода с помощью управляемого кода
private void Form1_Load(object sender, EventArgs e) {
// Устанавливаем текстовый режим ввода текста
InputModeEditor.SetInputMode(txtName, InputMode.AlphaCurrent);
// Устанавливаем числовой режим ввода текста
InputModeEditor.SetInputMode(txtPhone, InputMode.Numeric);
}
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Режимы наложения
Режимы наложения По умолчанию слой, наложенный на другой, непрозрачными участками полностью перекрывает изображение нижележащего слоя. Данный режим наложения называется Нормальный. Однако программа Adobe Photoshop предлагает несколько различных режимов наложения, при
Режимы
Режимы Программа RoughDraft очень удобна, в первую очередь, для людей творческих профессий: журналистов, писателей, сценаристов и т. д. Ко всем вышеописанным удобствам программа предлагает применение так называемых режимов, которые доступны в меню Mode (Режим).Что такое режим?
6.4. Графические режимы
6.4. Графические режимы Операционная система Windows поддерживает пять различных графических режимов, которые позволяют приложениям определять тип смешивания цветов, место и параметры вывода и т. д.:• настройки фона – определяет, как происходит смешивание цветов фона
Режимы
Режимы Очень часто в преобразованиях требуется обрабатывать одни и те же узлы, но разными способами. Типичным примером такого рода задачи является генерация оглавления документа вместе с преобразованием его содержимого. Очевидно, что просто шаблонами здесь не обойтись,
Цветовые режимы
Цветовые режимы Битовая картаВ режиме битовой карты (Bitmap) глубина цвета равна единице, следовательно, каждый пиксел может быть черного или белого цвета. Таким образом, изображение в режиме битовой карты будет монохромным. Файлы изображений, выполненных в режиме битовой
Сюжетные режимы
Сюжетные режимы Чтобы облегчить жизнь владельцев цифровых камер, производители фототехники догадались объединить параметры для типичных сюжетов, объектов и ситуаций съемки в так называемые сюжетные режимы настройки экспозиции. Они позволяют получать отличные снимки,
Режимы протяжки
Режимы протяжки Цифровым камерам (правда, не всем) доступно несколько режимов съемки, аналогичных тем, которые в традиционной фотографии называются режимами протяжки фотопленки. Правда, пленки в вашей цифровой камере нет, и в дальнейшем режимом протяжки мы будем
Режимы фокусировки
Режимы фокусировки Для упрощения работы фотографа расстояния, измеряемые системами автоматической фокусировки, объединены в ступени, или шаги (Stops). К примеру, в недорогих камерах с несложным объективом имеется, как правило, трехступенчатый автофокус, три настройки
Режимы энергосбережения
Режимы энергосбережения Понятие «энергосбережение» используется в компьютерной терминологии достаточно давно. Экономия энергии важна не только для ноутбуков, но и для настольных компьютеров. Конечно, сидя дома за своим ПК, вы не обращаете внимания на то, что он остается
Творческие режимы
Творческие режимы Программный режим Обозначается буквой Р. Это, в общем-то, автоматический режим, но в отличие от Авто он позволяет вам вносить свои изменения во многие выбранные камерой параметры: менять светочувствительность ISO, баланс белого, выбрать режим и точку
Режимы съемки
Режимы съемки Не пытайтесь чрезмерно увеличить светочувствительность, чтобы на фотографии не проявились шумы. Достаточно 50, 100 или 200 единиц ISO, в зависимости от модели камеры. Для получения более качественного изображения это имеет большое значение. Если вы хотите