Вниз
Скачать: CL | DM;

Подсказка ToolTip   Найти похожие ветки 

 
Comp ©   (2004-10-04 20:50) [0]

Хорошо, повторю.

Народ любезный, подскажите пожалуйста , как вывести простую пользовательскую текстовую подсказку средствами API?
В интернете примеров куча, но только на С++, а его я плохо знаю, очень плохо, почти не знаю.

Как вариант вопроса может быть так:
ПЕРЕВЕДИТЕ ПОЖАЛУЙСТА КОД (КТО ЗНАЕТ)
С++ ->> Delphi

switch(pnmhdr->code)
 {
   case TTN_NEEDTEXT:
     lpToolTipText = (LPTOOLTIPTEXT)pnmhdr;
     LoadString(hInst, lpToolTipText->hdr.idFrom,
       szBuf, sizeof(szBuf));
     lpToolTipText->lpszText = szBuf;
     break;

}


 
Comp ©   (2004-10-04 20:54) [1]

А как потом её использовать?

WM_NOTIFY: ...

Что нужно вместо точек писать?


 
Мастер ©   (2004-10-04 21:13) [2]

http://delphimaster.net/view/4-1096027253/


 
Comp ©   (2004-10-04 21:24) [3]

Мастер ©
Спасибо.
Но это не совсем то.
Это создание подсказки через предварительное создание окна.

А можно еще и не создавать окно, так как отображать надо только техт. На С++ это делается довольно просто, как видно по коду. Вот только как перевести на Delphi?

Да, забыл:

LPTOOLTIPTEXT lpToolTipText;
 LPTBNOTIFY lptbn;
 int nItem;
 static CHAR szBuf[128];


 
Comp ©   (2004-10-04 21:36) [4]

ВСЕ!
Мало-мальское решение нашел, буду переводить на API

Кого заинтересует:

http://www.delphisyte.ru/Articles/base/in_place_hint.html

Мастер © , СПАСИБО ЗА ПОДСКАЗКИ.


 
Comp ©   (2004-10-04 21:41) [5]

procedure TForm1.WMNotify(var Msg: TMessage);
var
 phd: PHDNotify;
 NMTTDISPINFO: PNMTTDispInfo;
begin
 phd := PHDNotify(Msg.lParam);
 if phd.Hdr.hwndFrom = GHWND then
 begin
   if phd.Hdr.Code = TTN_NEEDTEXT then
   begin
     NMTTDISPINFO := PNMTTDispInfo(phd);
     NMTTDISPINFO.lpszText := PChar(ListBox1.Items[CurrentIndex]);
   end;
 end;
end;

Примерно про что я имел ввиду...
ПРИМЕРНО...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
3-1097649698
alsov1
2004-10-13 10:41
2004.11.14
Как передать результат селекта параметром в процедуру?


8-1091749941
Fantom
2004-08-06 03:52
2004.11.14
как изменить звук


1-1099079349
namiq
2004-10-29 23:49
2004.11.14
RichEdit


1-1099039366
Aleksandr.
2004-10-29 12:42
2004.11.14
Как получить поток по его ThreadID?


1-1098958825
Dionnis
2004-10-28 14:20
2004.11.14
Динамический массив




   Наверх