Показать сообщение отдельно
  #6  
Старый 26.08.2008, 13:14
Beast Beast вне форума
Прохожий
 
Регистрация: 23.08.2008
Сообщения: 47
Репутация: 10
По умолчанию

Вот еще два кода, которые пишут первую букву - заглавной, остальные строчными в независимости от выделения и Shift'а (оба кода рабочих):

Код:
procedure TForm1.Edit1Change(Sender: TObject);
var
 s: string;
begin
  s := Edit1.text;
 if length(s) > 0 then
 begin
  Edit1.SetFocus;
  Edit1.SelStart := length(s);
  Edit1.text := AnsiUpperCase(Copy(s, 1, 1)) + AnsiLowerCase(Copy(s, 2, length(s)));
 end;
end;

Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
 s: String;
begin
  s := Key;
 if Edit1.SelStart = 0 then
  s := AnsiUpperCase(s)
 else
  s := AnsiLowerCase(s);
  Key := s[1];
end;