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

Вниз

как показать baloon-tip ?!   Найти похожие ветки 

 
чувак   (2007-08-30 03:34) [0]

Как показать baloon-tip (эта такая подсказка в жолтом окошке как из комикса :) ) из иконки в системном трее ? подскажите плз. кто чем может. Желательно без готовых компонентов, а только голым кодом.!
Заранее всех благодарю!


 
WASM ©   (2007-08-30 06:05) [1]

var
 TTI: TToolInfo;
 TTHWND: THandle;

procedure TForm1.ShowTooltip(IconType: Cardinal; Title: String; Text: String; XPos: integer; YPos: integer);
begin
 if TTHWND <> 0 then
   DestroyWindow(TTHWND);
 TTHWND:= CreateWindow(TOOLTIPS_CLASS, "",
   WS_POPUP or TTS_NOPREFIX or TTS_BALLOON or TTS_ALWAYSTIP,
   Integer(CW_USEDEFAULT), Integer(CW_USEDEFAULT),
   Integer(CW_USEDEFAULT), Integer(CW_USEDEFAULT), 0, 0, HInstance, nil);
 TTI.cbSize:= SizeOf(TTI);
 TTI.uFlags:= TTF_SUBCLASS or TTF_TRACK or TTF_TRANSPARENT;
 TTI.Rect.Left:= 0;
 TTI.Rect.Top:= 0;
 TTI.Rect.Bottom:= 0;
 TTI.Rect.Right:= 0;
 SetWindowPos(TTHWND, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE);
 TTI.lpszText:= PChar(Text);
 SendMessage(TTHWND, TTM_ADDTOOL, 0, Integer(@TTI));
 SendMessage(TTHWND, WM_SETFONT, Font.Handle, 0);
 SendMessage(TTHWND, TTM_SETTITLE, IconType, Integer(PChar(Title)));
 SendMessage(TTHWND, TTM_SETTIPBKCOLOR, $E1FFFF, 0);
 SendMessage(TTHWND, TTM_SETTIPTEXTCOLOR, $000000, 0);
 SendMessage(TTHWND, TTM_SETMAXTIPWIDTH, 0, Screen.Width);
 SendMessage(TTHWND, TTM_TRACKPOSITION, 0, MAKELPARAM(XPos, YPos));
 SendMessage(TTHWND, TTM_TRACKACTIVATE, Integer(LongBool(True)), Integer(@TTI));
end;

procedure TForm1.HideTooltip;
begin
 SendMessage(TTHWND, TTM_TRACKACTIVATE, Integer(0), Integer(@TTI));
 if TTHWND <> 0 then
   DestroyWindow(TTHWND);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 ShowTooltip(1, "Title", "Text" + #13#10 + "Text", SpinEdit1.Value, SpinEdit2.Value);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 HideTooltip;
end;


 
WASM ©   (2007-08-30 06:08) [2]

Const
 TTS_BALLOON = $40;//$30
 TOOLTIPS_CLASS = "tooltips_class32";
 TTS_ALWAYSTIP = $01;
 TTS_NOPREFIX = $02;
 TTF_SUBCLASS = $0010;
 TTF_TRANSPARENT = $0100;
 TTF_CENTERTIP = $0002;
 TTM_SETTITLE = (WM_USER + 32);


 
чувак   (2007-08-31 01:18) [3]

> [1] WASM ©   (30.08.07 06:05)


СПАСИБО ОГРОМНОЕ !



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
15-1188217178
GrayFace
2007-08-27 16:19
2007.09.23
Не работает Debugger в BDS2006


1-1184553942
aclub_it
2007-07-16 06:45
2007.09.23
Delphi &amp; Exel


15-1188021787
Kostafey
2007-08-25 10:03
2007.09.23
С днем рождения ! 25 августа


2-1188472951
@!!ex
2007-08-30 15:22
2007.09.23
AV при обработке MM таймера.


15-1187850596
KRM
2007-08-23 10:29
2007.09.23
Проблема при передачи даных на Bizerba ST-Terminal.