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

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

Выравнивание по правому краю в TEdit


ViRUS_1 ©   (2002-09-28 21:31:00) 

Как сделать?


Ученик   (2002-09-29 20:48:00) [1]

Можно взять TMemo, WantReturns=False, WordWrap=False, Alignment=taRightJustify, Height=21


PaRL   (2002-09-29 18:41:00) [2]

Я когда делал калькулятор, делал Edit через WinAPI, там когда создешь его через CreateWindow(), есть два параметра очень симпатишных:
ES_RIGHT Right-aligns text in a multiline edit control.
ES_NUMBER Allows only digits to be entered into the edit control.


MBo   (2002-09-29 17:19:00) [3]

Придется сделать наследника от TEdit и сделаать указанные действия в перекрытом CreateParams


ViRUS_1   (2002-09-29 09:56:00) [4]

2 Зотов
Пишу
eee:=TEdit.Create(fmMain);
eee.Width:=50;
eee.Text:="fddf";
eee.Name:="edD";
fmMain.InsertControl(eee);
SetWindowLong(eee.Handle, GWL_STYLE,
GetWindowLong(eee.Handle, GWL_STYLE)
and ES_RIGHT or ES_MULTILINE and not ES_WANTRETURN);
А выравнивание все равно не происходит. Может это WinXP или Delphi 6 глючат? Или чего забыл?


Юрий Зотов   (2002-09-28 21:45:00) [5]

Примерно так:

SetWindowLong(Edit1.Handle, GWL_STYLE,
GetWindowLong(Edit1.Handle, GWL_STYLE)
or ES_RIGHT or ES_MULTILINE and not ES_WANTRETURN);

Подробности в справке API по CreateWindow.


Наверх

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