Форум: "Основная";
Текущий архив: 2003.04.14;
Скачать: [xml.tar.bz2];
Вниззамена символа в tedit Найти похожие ветки
← →
denis24 (2003-04-03 14:10) [0]как сделать правильно сабж?
Я делаю так
в onkeydown
if key="o" then
SendMessage(txtFio.Handle , WM_CHAR, Ord("A"), 0);
но в контроле печатается и первый и второй символ (о,А).
← →
Skier (2003-04-03 14:12) [1]IMHO,надо написать обработчик на WM_CHAR
← →
Zz_ (2003-04-03 14:13) [2]if key="o" then key := "~";
← →
denis24 (2003-04-03 14:31) [3]key это просто переменная
по поводу wm_char, что за обработчик?
← →
MBo (2003-04-03 14:34) [4]OnKeyPress
if key="o" then key:="A"
← →
Smashich (2003-04-03 14:34) [5]это обработчик сообщения от винды WM_CHAR
Message methods + F1
← →
Skier (2003-04-03 14:36) [6]>denis24
> по поводу wm_char, что за обработчик?
Это виндусовое сообщение.
Но замену символа можно сделать и в onkeydown, параметр Key
там можно изменять ( var Key :...)
← →
Smashich (2003-04-03 14:36) [7]denis24 (03.04.03 14:31)
а чем тя key не устраивает?
← →
Palladin (2003-04-03 14:39) [8]
> key это просто переменная
а onkeydown просто процедура...
видишь как все просто?
← →
denis24 (2003-04-03 14:52) [9]ты сам то пробовал через key?
повторяю key-это переменная,менняя ее не измениш кода клавиши
нужно через апи
вопрос открыт
← →
Skier (2003-04-03 14:54) [10]
> нужно через апи
Тогда через WM_CHAR, вестимо...
← →
Palladin (2003-04-03 15:00) [11]
> denis24 (03.04.03 14:52)
иди книжку почитай по паскалю
← →
pasha676 (2003-04-03 15:57) [12]А чем не устраивает в edit1.text заменять последнюю букву (если она "о") на А. Зачем сразу лезть в месаги слать.
← →
Palladin (2003-04-03 16:30) [13]
> pasha676 (03.04.03 15:57)
а если буква была набрана посередине слова?
> denis24 (03.04.03 14:52)
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key="a" then key:="o";
end;
и почитай про передачу переменных в качестве параметров функций и процедур, это ведь основы...
← →
denis24 (2003-04-03 17:07) [14]Получилось.Вместо keypress использовал keydown и отсюда путаница.
Всем спасибо.
← →
pasha676 (2003-04-03 17:16) [15]
> а если буква была набрана посередине слова?
Pos, хотя придеться наверное Change использовать, а не даун или пресс. Не оптимально, согласен. Просто первое что взбрело мне в голову. Ваш пример оптимальнее, я собственно и хотел сказать, что не обязательно для этих целей ударяться в мессаги, все делается проще.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.04.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.008 c