![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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;