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

Вниз

Немогу добится нужного мне поведения от Balloon Tip а   Найти похожие ветки 

 
Kolan ©   (2005-10-02 16:35) [0]

Здравствуйте,
 Ballon Tip должен оповестить о чем - то(работает вместо ShowMessage) для этого он должен появится где-то у StatusBar, повисеть и исчезнуть.
Есть пример из FAQ, но я немогу понять как добится однократьного появления.
После вызова процедуры показа, Ballon Tip показывается всякий раз когда мыш навожу на тот контрол где я его показал.
Вот пример, который я использую:


procedure ShowBaloonTip(Control: TWinControl; Icon: Integer; Title: PChar;
 Text: PWideChar; BackCl, TextCl: TColor);
var
 hWndTip: THandle;
 Ti: TOOLINFO;
 HWND: THandle;
begin
 HWND := Control.Handle;
 hWndTip := CreateWindow(TOOLTIPS_CLASS, nil, WS_POPUP or
   TTS_NOPREFIX
   or TTS_BALLOON or TTS_ALWAYSTIP, 0, 0, 0, 0, HWND, 0, HInstance, nil);
 if hWndTip <> 0 then
 begin
   SetWindowPos(hWndTip, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE or SWP_NOMOVE
     or SWP_NOSIZE);
   Ti.cbSize := SizeOf(Ti);
   Ti.uFlags := {TTF_CENTERTIP or }TTF_TRANSPARENT or TTF_SUBCLASS;
   Ti.HWND := HWND;
   Ti.lpszText := Text;
   Windows.GetClientRect(HWND, Ti.Rect);
   SendMessage(hWndTip, TTM_SETTIPBKCOLOR, BackCl, 0);
   SendMessage(hWndTip, TTM_SETTIPTEXTCOLOR, TextCl, 0);
   SendMessage(hWndTip, TTM_ADDTOOL, 1, Integer(@Ti));
   SendMessage(hWndTip, TTM_SETTITLE, Icon mod 4, Integer(Title));
 end;
end;


Как добится желаемого?


 
begin...end ©   (2005-10-02 19:32) [1]

Послать TTM_ADDTOOL, указав в TOOLINFO флаг TTF_TRACK. Показывать в нужном месте самостоятельно, используя TTM_TRACKPOSITION и TTM_ACTIVATE.



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

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

Наверх




Память: 0.47 MB
Время: 0.068 c
2-1127830881
Evereve
2005-09-27 18:21
2005.10.23
целое ли число


4-1124416633
Kripton
2005-08-19 05:57
2005.10.23
Прозрачность в TglListBox (class(TCustomListBox))


2-1127328135
solomon
2005-09-21 22:42
2005.10.23
Fn клавиша и определение её кода


14-1128076085
Андрей Жук
2005-09-30 14:28
2005.10.23
Составил бюджет на следующий месяц...


6-1120661373
yurikon
2005-07-06 18:49
2005.10.23
Что за ошибка?