Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.11.10;
Скачать: CL | DM;

Вниз

TEdit, Win32 EDIT control и Alt+13   Найти похожие ветки 

 
ProgRAMmer Dimonych ©   (2013-05-27 23:50) [0]

Наверное, глупый и уже когда-нибудь кем-нибудь озвученный вопрос, но…

Тестил лабораторку на Delphi у коллеги и наткнулся на поведение, о котором даже не догадывался: если в TEdit попытаться ввести символ с кодом 13, используя сочетание клавиш Alt+13 (не отпуская Alt), в Edit окажется символ "d" (код 100). Аналогично для остальных кодов меньше 32.

Набросал минимальную программку на ассемблере — та же история. Проверка других программ показала, что такое поведение, похоже, проявляется для программ, использующих неЮникодные версии контролов.

Хочу понять физику процесса, не хочу сидеть с отладчиком, ибо некогда. Кто-нибудь может рассказать или поделиться ссылкой с разъяснениями? На «The Old New Thing» пока ничего найти конкретно по этой теме не удалось.


 
Rouse_ ©   (2013-05-27 23:53) [1]

Та это стандарт :)
Набери "Alt + 0169" и получишь вот такой символ =  ©


 
Rouse_ ©   (2013-05-27 23:55) [2]


> Хочу понять физику процесса,

Клавиатура переключается в режим альтернативного ввода, оть и вся физика :)


 
ProgRAMmer Dimonych ©   (2013-05-28 00:24) [3]

> [1] Rouse_ ©   (27.05.13 23:53)

Для этих понятно. У меня многоточие в нулевом посте так набрано :)

Просто для кодов непечатаемых символов в Unicode-программах визуально вставляется специальный знак (charmap) или вообще те самые старые добрые «нотки-смайлики» (notepad). А в ANSI-версиях контролов вот почему-то символы, коды которых никак не коррелируют вроде бы с тем же 13-м символом.

Что, собственно и интересует: как получается, что 13-му символу вдруг соответствует "d" (100 dec), а, например, 10-му — "0" (48 dec).



Страницы: 1 вся ветка

Текущий архив: 2013.11.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.006 c
1-1317971415
denkop
2011-10-07 11:10
2013.11.10
Манифест и прозрачность TLabel


15-1369116738
vajo
2013-05-21 10:12
2013.11.10
Батарея для бесперебойника.


15-1369324793
Rouse_
2013-05-23 19:59
2013.11.10
Ничего так замиксовали :)


2-1359427812
Abcdef123
2013-01-29 06:50
2013.11.10
Ошибки компиляции при переводе проекта в XE3.


15-1369427402
Юрий
2013-05-25 00:30
2013.11.10
С днем рождения ! 25 мая 2013 суббота