Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TEdit - печать с права на лево [D7, XP]


Beglec ©   (2006-04-20 13:24:00) 

Я таки сразу извиняюсь, за глупость вопроса :) давно программирую, но такой (возможно) простой вещи не знаю.

Стандартный компонет TEdit организует ввод данных слева направо. То есть печатаются данные слево направо.
Но вот взбрело мне в голову преукрасить немного свои програмульки.
И захотел, что бы компонент TEdit при вводе цифр вводил (отображал) данные справо на лево.
Не думаю что для это требуется перерисовывать Canvas. Скорее всего есть свойство. Покавырявшись ничего такого не нашел.
В общем:
- Как сделать так что бы информация в TEdit (TLabeledEdit) вводилась (показывалась) с право на лево.
Спасибки.


Asail   (2006-04-20 23:23:00) [1]


> разве во втором варианте свойство работает во всех ОС?

На сколько я понимаю, если XP или 2000, то локализация не нужна.


kilkennyCat   (2006-04-20 14:18:00) [2]


> Desdechado ©   (20.04.06 14:07) [2]


разве во втором варианте свойство работает во всех ОС? насколько я помню, только в арабоподобных локализациях...


Desdechado   (2006-04-20 14:07:00) [3]

задача, чтоб буквы "выползали" из-за правого края или все-таки выстраивались справа налево (по-арабски)?
для второго есть спец.свойство


solenko   (2006-04-20 13:50:00) [4]

Canvas перерисовывать не получится, т.к. у TEdit его нет :)
Сам недавно с этим игрался -- нашел такое решение

type
 TNumEdit = class(TCustomEdit)
 public
   procedure CreateParams(var Params: TCreateParams); override;
end;
...
procedure TNumEdit.CreateParams(var Params: TCreateParams);
begin
 inherited CreateParams(Params);
 Params.Style := Params.Style or ES_MULTILINE or ES_RIGHT or ES_NUMBER;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо