FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Cuadro de mensaje...
Hola...!
Alguien conoce como se puede mandar llamar el cuadro de mensaje que aparece desde Win2000 Professional, parece como un "globo" de historietas. O basta con hacer un form transparente y usar un BMP como si fuera el cuadro.
__________________
Guía de Estilo. |
#2
|
||||
|
||||
Si hablas de los Hints, lo puedes hacer en Win9x con
Código:
CreateWindowEx(0, TOOLTIPS_CLASS, nil, TTS_ALWAYSTIP or TTS_BALLOON.... Saludos!
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#3
|
||||
|
||||
Funciona de maravilla...
Gracias!
__________________
Guía de Estilo. |
#4
|
||||
|
||||
Hola...
Yo de nuevo! Este metodo que proporcionaste delphi.com.ar, parece tener un pequeño detallito, tras usarlo un poco me di cuenta que el Title de Código:
procedure AddToolTip(hwnd: dword; lpti: PToolInfo; IconType: Integer; Text, Title: PChar); ejemplo: Código:
AddToolTip(Memo1.Handle, @ti, 1, 'Escribe aki tu texto', 'Tipo1:'); AddToolTip(Memo2.Handle, @ti2, 2, '+ Texto', 'Tipo2:'); AddToolTip(Edit1.Handle, @ti3, 3, 'Estas en el Edit1', 'Tipo3:'); Por lo que hice: Código:
procedure CreateToolTips(hWnd: Cardinal; var hToolTip:Cardinal; var lpti: TToolInfo); begin hToolTip := CreateWindowEx(0, 'Tooltips_Class32', nil, TTS_ALWAYSTIP or TTS_BALLOON, Integer(CW_USEDEFAULT), Integer(CW_USEDEFAULT),Integer(CW_USEDEFAULT), Integer(CW_USEDEFAULT), hWnd, 0, hInstance, nil); if hToolTip <> 0 then begin SetWindowPos(hToolTip, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE); lpti.cbSize := SizeOf(TToolInfo); lpti.uFlags := TTF_SUBCLASS; lpti.hInst := hInstance; end; end; procedure AddToolTip(hToolTip: Cardinal; hwnd: dword; lpti: PToolInfo; IconType: Integer; Text, Title: PChar); var Item: THandle; Rect: TRect; begin Item := hWnd; if (Item <> 0) AND (GetClientRect(Item, Rect)) then begin lpti.hwnd := Item; lpti.Rect := Rect; lpti.lpszText := Text; SendMessage(hToolTip, TTM_ADDTOOL, 0, Integer(lpti)); FillChar(buffer, sizeof(buffer), #0); lstrcpy(buffer, Title); if (IconType > 3) or (IconType < 0) then IconType := 0; SendMessage(hToolTip, TTM_SETTITLE, IconType, Integer(@buffer)); end; end; Código:
unit unit1; uses ..., CommCtrl, ...; const TTS_BALLOON = $40; TTM_SETTITLE = (WM_USER + 32); ... ... ... var Form1: TForm1; hTooltip1, hToolTip2, hToolTip3: Cardinal; tip1, tip2,tip3: TToolInfo; buffer: array[0..255] of char; ... ... ... procedure TForm1.FormCreate(Sender: TObject); begin CreateToolTips(Form1.Handle, hToolTip1, tip1); CreateToolTips(Form1.Handle, hToolTip2, tip2); CreateToolTips(Form1.Handle, hToolTip3, tip3); AddToolTip(hToolTip1,Memo1.Handle, @tip1, 1, 'Escribe aki tu texto', 'Tipo1:'); AddToolTip(hToolTip2,Memo2.Handle, @tip1, 2, '+ Texto', 'Tipo2:'); AddToolTip(hToolTip3,Edit1.Handle, @tip1, 3, 'Estas en el Edit1', 'Tipo3:'); end;
__________________
Guía de Estilo. |
|
|
|