Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.07;
Скачать: CL | DM;

Вниз

Координаты кнопок на Toolbar   Найти похожие ветки 

 
NewN ©   (2003-05-06 12:54) [0]

Добрый день уважаемые мастера!
Можно ли как нибудь определить/(или как правильно посчитать) координату правой границы последней кнопки на Toolbar? (Хочу поместить свой элемент управления непосредственно после.)


 
Игорь Шевченко ©   (2003-05-06 15:35) [1]

Для своего приложения ?


 
NewN ©   (2003-05-06 15:45) [2]

Да, конечно, мне чужого не надо.


 
Игорь Шевченко ©   (2003-05-06 17:32) [3]

var
LastButton : TControl;
begin
LastButton := ToolBar1.Buttons[Pred(ToolBar1.ButtonCount)];
{ Left и Top LastButton будут координатами }
end;

если VCL не используется, то поглядеть по исходникам, во что преобразуются вызовы методов Toolbar.


 
NewN ©   (2003-05-07 08:46) [4]

VCL не используется. Как же мог опять забыть про исходники VCL!
Сильно запутанно и накручено, но вот что удалось выяснить -

TToolButton = class(TGraphicControl), с перекрытыми методами Paint, MouseDown, MouseMove, MouseUp. TToolButton из VCL сама отрисовывается в методе TToolButton.Paint, сама следит за мышкой, а координаты расчитываются в зависимости от индекса, и её положение на ToolBar скорее всего не соответствует положению реальной кнопки из Windows. Я понял, что в общем случае узнать координаты и размер кнопки на ToolBar невозможно, если конечно нет для этого недокументированных сообщений. Жаль.


 
nikkie ©   (2003-05-07 14:59) [5]

TB_GETITEMRECT


 
NewN ©   (2003-05-07 16:02) [6]

>>nikkie © (07.05.03 14:59)
Большое спасибо, как я сам его пропустил, ведь смотрел, несколько раз проходил глазами по этим TB_...! В следующий раз буду внимательнее.



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

Текущий архив: 2003.07.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
14-20308
Zergling
2003-06-18 06:58
2003.07.07
Эксперты для дельфи


1-20141
OlegM
2003-06-25 09:35
2003.07.07
Как заставить встроеный динамик пищать


6-20183
Aleks1
2003-04-30 18:19
2003.07.07
Localhost


14-20214
Дмитрий К.К.
2003-06-22 10:34
2003.07.07
Именинники 22 июня


3-20009
mod
2003-06-14 16:21
2003.07.07
SQL