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

В каком событии рассчитывать координаты отрисовки   Найти похожие ветки 

← →
Handle   (2012-04-17 10:48) [0]

Написан компонент-наследник от TButton, на котором отрисовываются 2 иконки. Нужно иметь возможность возвращать TRect областей отрисовки иконок. Сейчас области TRect, в которых отрисовываются иконки рассчитываются в методе Paint.

//...
var
 SmallIconBoundsRect, LargeIconBoundsRect: TRect;
begin
 // ...
 { SmallIconBoundsRect := ... }
 { LargeIconBoundsRect := ... }

Будет ли правильно, если сделать SmallIconBoundsRect, LargeIconBoundsRect property и инициализироваться они будут в методе Paint?


← →
Handle   (2012-04-17 10:51) [1]

отрисовываемые иконки центрируются исходя из Height и Width кнопки. Кнопка может растягиваться, поэтому нужно пересчитывать координаты областей отрисовки иконок. не нашел события Resize, пожтому ничего лучше чем делать это в событии Paint не придумал.


← →
sniknik ©   (2012-04-17 11:02) [2]

> не нашел события Resize
type
 TMyButton = class(TButton);

procedure TForm1.FormCreate(Sender: TObject);
begin
 TMyButton(Button1).OnResize:= ...


← →
Сергей М. ©   (2012-04-17 11:02) [3]

Правильным будет делать это в WM_SIZE


← →
Anatoly Podgoretsky ©   (2012-04-17 11:08) [4]

> Handle  (17.04.2012 10:48:00)  [0]

Не видить свойств, а свойство это то что позволит это делать "автоматически"
и безопасно.
Делать что либо расчетное в Paint не совсем верно.



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

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



Память: 0.45 MB
Время: 0.055 c
15-1342992635
Pavlik
2012-07-23 01:30
2013.03.22
Посоветуйте цену


2-1342507580
Pcrepair
2012-07-17 10:46
2013.03.22
Массив строк. как ввести в него данные?


4-1261510346
denis_l
2009-12-22 22:32
2013.03.22
Определение пользователя который запустил процесс


2-1330505116
AlexDn
2012-02-29 12:45
2013.03.22
if....then.....


2-1334296563
leklerk
2012-04-13 09:56
2013.03.22
Создание формы из консоли




   Наверх