Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Перевод в верхний регистр первого вводимого символа

Delphi , Компоненты и Классы , TEdit

Перевод в верхний регистр первого вводимого символа

Сокращенное название Международной Ассоциации Старых Дев - "Интер-НЕТ!"


procedure TForm1.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin
  if (DBEdit1.SelStart = 0) then
    Key := upCase(Key);
end;

Или для Edit:


procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  with Sender as TEdit do
    if (Text = '') or (Text[SelStart] = ' ')
      or (SelLength = Length(Text)) then
        if Key in ['a'..'z'] then
          Key := UpCase(Key);
end;

Here's the translation of the Delphi code snippet into Russian:

Процедура 1: DBEdit1KeyPress

Эта процедура вызывается при нажатии клавиши в контроле DBEdit (редактор с учетом базы данных). Она проверяет, находится ли начало выделения (SelStart) в начале текста (т. е., имеет индекс 0). Если это так, она конвертирует входящий символ в верхний регистр с помощью функции UpCase и присваивает результат параметру Key.

Процедура 2: Edit1KeyPress

Эта процедура аналогична первой, но вызывается при нажатии клавиши в обыкновенном контроле TEdit (простой редактор). Она проверяет три условия: 1. Текст пуст (Text = ''). 2. Начало выделения находится в начале текста и не выбрано ни одного символа (Text[SelStart] = ' '). 3. Длина выделения равна длине текста, что означает, что выбран только один символ. Если любое из этих условий истинно, она проверяет, является ли входящая клавиша нижним регистром (Key in ['a'..'z']). Если это так, она конвертирует клавишу в верхний регистр с помощью UpCase и присваивает результат параметру Key.

Альтернативное решение

Вместо использования множества условий и проверок можно упростить код, используя одиночную проверку первого символа:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if (Sender is TEdit) and (TEdit(Sender).Text = '') then
    Key := UpCase(Key);
end;

В этом варианте мы используем if-заявление, чтобы проверить, является ли отправитель контролем TEdit и если текст пуст. Если оба условия истинны, мы конвертируем клавишу в верхний регистр.

Обратите внимание, что в обоих процедурах вам нужно убедиться, что объект-отправитель является indeed контролем DBEdit или TEdit, соответственно.

Статья описывает программные решения для преобразования первого вводимого символа в верхний регистр на языках Delphi и Pascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: TEdit ::


реклама



©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100

Время компиляции файла: 2024-05-19 17:53:24
2024-05-19 20:50:09/0.0073628425598145/2