Имеется код
Код:
case Key of
..............
'G', 'g', 'П', 'п' :
begin
s := edtCurFrame.Text;
Delete(s,1,1); Insert('G', s, 1);
Key:=#0;
edtCurFrame.Text:=s;
edtCurFrame.SelLength:=0;
edtCurFrame.SelStart:= Length(s);
end;
и вот таким "макаром" еще семь клавиш

, т.е. задача: при нажатии на соответствующую клавишу должен вставляться определенный символ в определенное место в строке, не зависимо от раскладки клавиатуры и регистра.
Собственно все работает, но подозреваю, что код можно написать проще, например, создать массив, что-то типа
Код:
var charry: array[1..8] of char;
и проверять содержится ли в этом массиве нажатая клавиша, а как дальше объяснить программе, что мне нужна заглавная, латинская буква?