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

Вниз

hint   Найти похожие ветки 

 
bagos   (2006-12-09 13:19) [0]

Люди подскажите где можно найти компонент,подсказки вылезали около часов


 
DrPass ©   (2006-12-09 13:56) [1]

Чтобы около часов и в других местах вылезали всякие глюки, желательно использовать LSD


 
Sicilla ©   (2006-12-09 16:21) [2]

в delphi 2006 он уже есть. Не надо придумывать велосипед


 
Belorus ©   (2006-12-10 15:16) [3]

> [2] Sicilla ©   (09.12.06 16:21)
> в delphi 2006 он уже есть. Не надо придумывать велосипед


Подаришь мне пару тысяч долларов на BDS 2006 ?
А то у меня есть лицензия на Delphi 7 ENTERPRISE, да и то только на работе.


 
Cawa ©   (2006-12-10 15:22) [4]


unit uBalloon;
(*
Образцы кода взяты из
Delphi Russian Knowledge Base
from Vit
Version 2.2

*)

interface
uses  { Какие библиотеки используем }
 Windows, ShellAPI, SysUtils;

type
 TBalloonTimeout = 10..30{seconds};
 TBalloonIconType = (bitNone,    // нет иконки
                     bitInfo,    // информационная иконка (синяя)
                     bitWarning, // иконка восклицания (жёлтая)
                     bitError);  // иконка ошибки (краснаа)

function DZAddTrayIcon(const Window: HWND; const IconID: Byte; const Icon: HICON; const Hint: String = ""): Boolean;
function DZRemoveTrayIcon(const Window: HWND; const IconID: Byte): Boolean;
function DZBalloonTrayIcon(const Window: HWND; const IconID: Byte; const Timeout: TBalloonTimeout; const BalloonText, BalloonTitle: String; const BalloonIconType: TBalloonIconType): Boolean;

implementation

const
 NIF_INFO      =        $00000010;

 NIIF_NONE     =        $00000000;
 NIIF_INFO     =        $00000001;
 NIIF_WARNING  =       $00000002;
 NIIF_ERROR    =        $00000003;

type
 NotifyIconData_50 = record // определённая в shellapi.h
   cbSize: DWORD;
   Wnd: HWND;
   uID: UINT;
   uFlags: UINT;
   uCallbackMessage: UINT;
   hIcon: HICON;
   szTip: array[0..MAXCHAR] of AnsiChar;
   dwState: DWORD;
   dwStateMask: DWORD;
   szInfo: array[0..MAXBYTE] of AnsiChar;
   uTimeout: UINT; // union with uVersion: UINT;
   szInfoTitle: array[0..63] of AnsiChar;
   dwInfoFlags: DWORD;
 end{record};

///////////////////////////////////////////////////////////////////////
{добавление иконки }
//Взято с Исходников.ru http://www.sources.ru
function DZAddTrayIcon(const Window: HWND; const IconID: Byte; const Icon: HICON; const Hint: String = ""): Boolean;
var
 NID : NotifyIconData;
begin
 FillChar(NID, SizeOf(NotifyIconData), 0);
 with NID do begin
   cbSize := SizeOf(NotifyIconData);
   Wnd := Window;
   uID := IconID;
   if Hint = "" then begin
     uFlags := NIF_ICON;
   end{if} else begin
     uFlags := NIF_ICON or NIF_TIP;
     StrPCopy(szTip, Hint);
   end{else};
   hIcon := Icon;
 end{with};
 Result := Shell_NotifyIcon(NIM_ADD, @NID);
end;

///////////////////////////////////////////////////////////////////////
{удаляет иконку}
//Взято с Исходников.ru http://www.sources.ru

function DZRemoveTrayIcon(const Window: HWND; const IconID: Byte): Boolean;
var
 NID : NotifyIconData;
begin
 FillChar(NID, SizeOf(NotifyIconData), 0);
 with NID do begin
   cbSize := SizeOf(NotifyIconData);
   Wnd := Window;
   uID := IconID;
 end{with};
 Result := Shell_NotifyIcon(NIM_DELETE, @NID);
end;

///////////////////////////////////////////////////////////////////////
{Показывает баллон}
//Взято с Исходников.ru http://www.sources.ru

///////////////////////////////////////////////////////////////////////
function DZBalloonTrayIcon(const Window: HWND; const IconID: Byte; const Timeout: TBalloonTimeout; const BalloonText, BalloonTitle: String; const BalloonIconType: TBalloonIconType): Boolean;
const
 aBalloonIconTypes : array[TBalloonIconType] of Byte = (NIIF_NONE, NIIF_INFO, NIIF_WARNING, NIIF_ERROR);
var
 NID_50 : NotifyIconData_50;
begin
 FillChar(NID_50, SizeOf(NotifyIconData_50), 0);
 with NID_50 do begin
   cbSize := SizeOf(NotifyIconData_50);
   Wnd := Window;
   uID := IconID;
   uFlags := NIF_INFO;
   StrPCopy(szInfo, BalloonText);
   uTimeout := Timeout * 1000;
   StrPCopy(szInfoTitle, BalloonTitle);
   dwInfoFlags := aBalloonIconTypes[BalloonIconType];
 end{with};
 Result := Shell_NotifyIcon(NIM_MODIFY, @NID_50);
end;

end.


 
Cawa ©   (2006-12-10 15:25) [5]

а вызываешь вот так:

uses uBaloon;
...
var
 Icon: HICON;
 Wnd: HWND;
...
 Wnd:=GetForegroundWindow();
 Icon := LoadIcon(0, IDI_APPLICATION);
 DZAddTrayIcon(Wnd, 1, Icon, g_Title);
 DZBalloonTrayIcon(Wnd, 1, 10, "Привет!!!", "Титул", TBalloonIconType(g_IconType));
 Sleep(ms);
 DZRemoveTrayIcon(Wnd, 1);


 
sicilla ©   (2006-12-10 16:03) [6]

Belorus ©:
Сходи в магазин и купи Delphi 2006. Я лично так сделал. DVD диск за 150 рублей. Не жалею. Там все есть. И работет отлично



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

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

Наверх




Память: 0.48 MB
Время: 0.03 c
4-1156131902
ZLOFENIX
2006-08-21 07:45
2006.12.31
Получение нажатых клавиш


15-1165474339
novoalex
2006-12-07 09:52
2006.12.31
Как реализовать в своём проекте...


11-1140498708
LAutour
2006-02-21 08:11
2006.12.31
Проблема с Align для нескольких компонент на форме.


15-1165999792
ocean
2006-12-13 11:49
2006.12.31
Перегнать фильм с камеры на DVD


2-1165911061
pathfinder
2006-12-12 11:11
2006.12.31
Win to Dos, Unicode..