Вниз
Скачать: CL | DM;

замена символа в 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.013 c
1-44272
MaX1
2003-04-02 16:07
2003.04.14
Программа тестирования.


14-44408
FLIZ
2003-03-28 15:21
2003.04.14
Как определить длину RTF текста? (+)


1-44160
elf_123
2003-04-02 21:22
2003.04.14
ARRAYOFCONST


3-44014
gal
2003-03-24 13:59
2003.04.14
БД


14-44352
Uristemova Gulden
2003-03-31 10:27
2003.04.14
программы на Delphi




   Наверх