Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
14-44426
Adolf
2003-03-28 16:28
2003.04.14
Крутой кекс


6-44306
ev
2003-02-20 16:26
2003.04.14
snmp


14-44417
Yakudza
2003-03-28 16:24
2003.04.14
D7


1-44220
race1
2003-04-01 17:48
2003.04.14
ttreenode


9-43982
Извращенец
2002-11-12 17:37
2003.04.14
как рисовать...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский