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

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

hint [D6, Win95/98]


Андреев Павел ©   (2002-09-27 11:58:00) 

Как при проектировании своей компоненты (графическая сетевая диаграмма) сделать hint, который появлялся бы в зависимости от участка над которым находится курсор. При этом hint должен полностью рисоваться мной (в виде таблицы с графическими штучками).
Plzzz срочно!!!


Андреев Павел   (2002-09-28 11:30:00) [1]

Все, большое спасибо. заработало!!!


turusov   (2002-09-27 12:09:00) [2]

procedure TNsStatusBar.CMHintShow(var Message: TMessage);
var
Item: TNsStatusPanel;
ItemRect: TRect;
InfoTip: string;
begin
if True {Assigned(FOnInfoTip)} then
with TCMHintShow(Message) do
begin
Item:= GetItemAt(HintInfo.CursorPos.X, HintInfo.CursorPos.Y);
if Item <> nil then begin
if Item.Hint <> "" then
InfoTip:= Item.Hint
else
InfoTip:= Self.Hint;
SendMessage(Handle, SB_GETRECT, Item.Index, Integer(@ItemRect));
ItemRect.TopLeft := ClientToScreen(ItemRect.TopLeft);
ItemRect.BottomRight := ClientToScreen(ItemRect.BottomRight);
with HintInfo^ do begin
HintInfo.CursorRect := ItemRect;
HintInfo.HintStr := InfoTip;
HintPos.Y := CursorRect.Top + GetSystemMetrics(SM_CYCURSOR);
HintPos.X := CursorRect.Left + GetSystemMetrics(SM_CXCURSOR);
HintInfo.HintMaxWidth := ClientWidth;
Message.Result := 0;
end;
end;
end
else
inherited;
end;
ИЛИОбрати внимание на
function ControlAtPos(const Pos: TPoint; AllowDisabled: Boolean, AllowWinControls:Boolean=False): TControl;


Наверх

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