Вниз
Скачать: CL | DM;

Выравнивание текста в Edit   Найти похожие ветки 

← →
Антибайт   (2006-09-16 20:57) [0]

А как можно сделать вертикальное выравнивание в однострочном редакторе?

Попробовал так

var
Rect  : pointer;
Rect_  : TRect;

begin
Rect_.Top := 2;
Rect_.Left := 10;
Rect_.Right := 200;
Rect_.Bottom := 10;
Rect := @Rect_;
SendMessage (CatBox.Handle, EM_SetRectNP, 0, Integer (Rect));
end;


Не работает не фига ((

Фунrцию вызываю в OnShow.


← →
KilkennyCat ©   (2006-09-17 11:39) [1]

А не проще ли написать наследника с собственной процедурой отрисовки?


← →
Антибайт   (2006-09-17 20:53) [2]

Да нифига не проще. Придётся перехватывать клавиатуру, писать в буфер, потом через TextOut выводить из буфера на каждое отжатие клавиши. Может можно проще, но мне пока в голову лезет этот вариант.

И что значит наследник на апях?

Почему EM_ SetRect не работает?


← →
KilkennyCat ©   (2006-09-18 12:37) [3]

> [2] Антибайт   (17.09.06 20:53)


это я сглупил, извиняюсь... забыл, что апишный раздел.

Может, не работает из-за того, что EM_SetRectNP не вызывает перериросовки? :)


← →
Антибайт   (2006-09-19 09:45) [4]

Ну ведь EM_GetRect возвращает правильный прямоугольник.  
Обязательно после этого перерисовыватся?


← →
Leonid Troyanovsky ©   (2006-09-19 10:40) [5]


> Антибайт   (16.09.06 20:57)  

> А как можно сделать вертикальное выравнивание в однострочном
> редакторе?

> SendMessage (CatBox.Handle, EM_SetRectNP, 0, Integer (Rect));


This message is processed only by multiline edit controls.

--
Regards, LVT.


← →
Антибайт   (2006-09-19 13:38) [6]

А как быть с однострочным редактором?


← →
Leonid Troyanovsky ©   (2006-09-19 14:33) [7]


> Антибайт   (19.09.06 13:38) [6]

> А как быть с однострочным редактором?


http://groups.google.com/group/borland.public.delphi.vcl.components.using/msg/111fd76230bd76fd

--
Regards, LVT.


← →
DVM ©   (2006-09-19 15:01) [8]


> И что значит наследник на апях?

Ну не наследник, а оконную процедуру подменить своей можно вполне. SetWindowLong(...). В обработчике WM_PAINT рисовать все что угодно.
Для остальных сообщений вызывать дефолтовую оконную процедуру.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
15-1168191039
IMHO
2007-01-07 20:30
2007.01.28
MS Word и папка по умолчанию


15-1168348780
Gorlum
2007-01-09 16:19
2007.01.28
Яндекс мне отказал:)


15-1168260263
iXT
2007-01-08 15:44
2007.01.28
Продам в хорошие руки!


15-1166074217
Gydvin
2006-12-14 08:30
2007.01.28
А был ли "сглаз"


1-1165327777
dreamse
2006-12-05 17:09
2007.01.28
Ошибка при загрузке компонента из файла




   Наверх