Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2012.05.27;
Скачать: [xml.tar.bz2];

Вниз

изменение регистра символов в RichEdit   Найти похожие ветки 

 
sem   (2012-01-24 13:15) [0]

Доброго времени суток!
Как до ввода символов изменить их регистр в RichEdit?
Спасибо.


 
Германн ©   (2012-01-24 13:30) [1]

Нажать клавишу Caps Lock.


 
Dimka Maslov ©   (2012-01-24 13:39) [2]

OnKeyPress


 
sem   (2012-01-24 14:04) [3]

Конечно же речь идет, чтобы ничего не нажимать. Следующий совет видимо будет - включить в розетку компьютер. Извините, сорвалось.


 
Inovet ©   (2012-01-24 14:10) [4]

> [3] sem   (24.01.12 14:04)
> Конечно же речь идет, чтобы ничего не нажимать.

Т.е. пользователь не нажал ни "Shift" ни "Caps lock", а у него вдруг начали печататься символы в другом регистре. Представляю какими словами он будет ругать горе-программиста.


 
sem   (2012-01-24 14:16) [5]

Inovety за юмор плюс! Но тем не менее - как сделать-то? Должна же быть какая-нибудь директива. Ведь в Edit -то есть. CharCase.


 
Германн ©   (2012-01-24 14:19) [6]


> Ведь в Edit -то есть. CharCase.

Вы не поверите, но RichEdit наследник TCustomEdit, а значит...


 
RWolf ©   (2012-01-24 14:20) [7]

можно ещё тут посмотреть: http://delphimaster.net/view/2-1327316580/


 
Dimka Maslov ©   (2012-01-24 14:20) [8]

Тебе же написали, что перехватом OnKeyPress задача решается элементарно. Не знаешь как — иди учи, потом уже задавай глупые вопросы. А то бы всё директивы переставлять.


 
Германн ©   (2012-01-24 14:29) [9]


> Германн ©   (24.01.12 14:19) [6]

Пардон. Не работает.


 
sem   (2012-01-24 14:29) [10]

RWOLFу спасибо! И насмешникам спасибо! Удачи вам!


 
Inovet ©   (2012-01-24 14:37) [11]

> [5] sem   (24.01.12 14:16)
> Inovety за юмор плюс! Но тем не менее - как сделать-то?

Пожалуйста! Но пользователь всё равно ругать будет, и хорошо если тебя рядом не будет, а то может не только ругать.

В общем я беспокоюсь за психическое и не только здоровье вас обоих, поэтому без понимания "зачем сделать" не советую "как сделать".


 
sem   (2012-01-24 14:49) [12]

На нужной кнопке будет много чего еще висеть и поэтому не хотелось бы заставлять пользователя нажимать для прохождение на следующий этап работы несколько кнопок. Я думаю сделать так, чтобы его (пользователя) как можно меньше отвлекать от основной мозговой работы. Мне такой вариант интерфейса кажется более профессиональным. Еще раз всего доброго!


 
Германн ©   (2012-01-24 14:53) [13]


> sem   (24.01.12 14:29) [10]
>
> RWOLFу спасибо!

LMD


 
MonoLife ©   (2012-01-24 14:59) [14]


> Пардон. Не работает.

это почему это?
RichEdit.text=UpperCase(RichEdit.text)


 
Inovet ©   (2012-01-24 14:59) [15]

> [12] sem   (24.01.12 14:49)

Ты зра видишь только насмешки. Представь: твоя программа включила сама Caps Lock, пользователь не догадывается об этом. Теперь он переключается на другое приложение и что-то там долго вводит, и вдруг видит что всё введено в инверсном регистре. Он конечно подумает, что сам дурак нажал злосчастные Caps Lock. Но после второго и третьего раза, он догадается, кто ему свинью подложил.

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

Надо тепе сменить регистр, меняй его после ввода или по мере ввода, как советовали сразу, но не жми программно кнопки, как ты просишь.


 
sem   (2012-01-24 15:00) [16]

А что означают эти магические буквы LMD?


 
sem   (2012-01-24 15:04) [17]

А как по мере ввода? Конечно горящая CapsLock мало привлекательна, тут спорить не буду.


 
Inovet ©   (2012-01-24 15:05) [18]

> [17] sem   (24.01.12 15:04)
> А как по мере ввода?

В событии

> [2] Dimka Maslov ©   (24.01.12 13:39)
> OnKeyPress

приводи к нужному регистру.


 
Inovet ©   (2012-01-24 15:08) [19]

> [18] Inovet ©   (24.01.12 15:05)
> приводи к нужному регистру.

вводимый символ


 
sem   (2012-01-24 15:10) [20]

Меня бы строчки кода выручили!


 
Inovet ©   (2012-01-24 15:29) [21]

> [20] sem   (24.01.12 15:10)
> Меня бы строчки кода выручили!

Key := UpCase(Key);


 
Ega23 ©   (2012-01-24 15:33) [22]


procedure TForm32.RichEdit1KeyPress(Sender: TObject; var Key: Char);
begin
 Key := Char(CharUpper(PChar(Key)));
end;


 
sniknik ©   (2012-01-24 15:33) [23]

> А что означают эти магические буквы LMD?
http://lurkmore.to/LMD


 
Ega23 ©   (2012-01-24 15:35) [24]


> Key := UpCase(Key);


На кириллице не сработает.


 
sniknik ©   (2012-01-24 15:46) [25]

Ega23 ©   (24.01.12 15:33) [22]
че сложно то так?
procedure TForm1.RichEdit1KeyPress(Sender: TObject; var Key: Char);
begin
 CharUpper(@Key);
end;


> На кириллице не сработает.
сработает, посмотри тип входящего параметра


 
sniknik ©   (2012-01-24 15:51) [26]

>> На кириллице не сработает.
> сработает, посмотри тип входящего параметра
а, сорри, ты про UpCase... ;(


 
Ega23 ©   (2012-01-24 15:52) [27]


> че сложно то так?

И то верно. Не подумал.


> сработает, посмотри тип входящего параметра

Однако латинницу переводит, кириллицу - нет. Ну, в случае Key:=UpCase(Key)


 
sem   (2012-01-24 18:10) [28]

Ega23 огромное спасибо! И sniknik огромное спасибо!



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

Форум: "Начинающим";
Текущий архив: 2012.05.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.004 c
6-1254828340
ABolnykh
2009-10-06 15:25
2012.05.27
Чем разделить видеопоток?


2-1327559321
rusmus
2012-01-26 10:28
2012.05.27
Использование edit1


2-1326972707
adigozelov
2012-01-19 15:31
2012.05.27
sms na mobilniy telefon


15-1327042259
OW
2012-01-20 10:50
2012.05.27
Придумал как повысить производительность труда :)


2-1327043868
Chuck Bass
2012-01-20 11:17
2012.05.27
Указать позицию для записи таблицы БД





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский