Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.047 c
3-1161093040
Desdechado
2006-10-17 17:50
2006.12.31
Ищу пояснения по полям User_Indexes


15-1165771559
Real
2006-12-10 20:25
2006.12.31
Патенты на изобретения и идеи - где? как? почем?


3-1161004920
Petrovski
2006-10-16 17:22
2006.12.31
Что за ошибка "Invalid floating point operation"


1-1163360090
RASkov
2006-11-12 22:34
2006.12.31
"Всплывающее окно"


15-1165376593
Slider007
2006-12-06 06:43
2006.12.31
С днем рождения ! 6 декабря





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский