Показать сообщение отдельно
  #1  
Старый 08.11.2011, 22:14
zabor zabor вне форума
Прохожий
 
Регистрация: 08.11.2011
Сообщения: 1
Репутация: 10
По умолчанию использование UpCase при работе с TDBLookupComboboxEh

Здравствуйте.
Для того, чтобы каждое новое слово /на кириллице/ в Edit было с заглавной буквы используем:
Код:
function  UpCase (ch: char): char;
begin
  if (ch in ['a'..'z', 'а'..'я']) then
    result := chr(ord(ch) - 32)
  else
    result := ch;
end;

procedure TForm.EditKeyPress(Sender: TObject; var Key: Char);
begin
with Sender as TEdit do
    if (SelStart = 0) or
       (Text[SelStart] = ' ') then
          if Key in ['а'..'я'] then
             Key := UpCase(Key) ;
end;
Результат: каждое новое слово начинается с заглавной буквы.

Теперь вопрос.
Как тоже самое сделать для TDBLookupComboboxEh (Style = csDropDownEh, значения присвоены ListSource, ListField, KeyField и все работает), чтобы был аналогичный результат?

Цель: необходимо при вводе набора слов в поле DBLookupComboboxEh, которым соответствий в базе нет, автоматически начинать каждое новое слово с заглавной буквы.

p.s. назначение TDBLookupComboboxEh в качестве Sender ни к чему не приводит.

Прошу помочь. Заранее благодарю.
Ответить с цитированием