Главная страница
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.012 c
1-20144
Onward
2003-06-23 03:25
2003.07.07
Вопрос о ListView???


1-20148
Endi
2003-06-24 22:42
2003.07.07
Проблема с символами в Edit


3-19978
ERDEN
2003-06-13 09:42
2003.07.07
Query.RecordCount ....


1-20147
lightix
2003-06-24 16:18
2003.07.07
QReport - как программно сменить принтер?


14-20281
Tornado
2003-06-20 09:35
2003.07.07
Как бороться со спамом?