Форум: "Начинающим";
Текущий архив: 2007.01.14;
Скачать: [xml.tar.bz2];
ВнизЗапуздыривание в трей. Найти похожие ветки
← →
vain © (2006-12-26 17:30) [0]
type
TSystemTrayIcon= class
private
placed: boolean;//true, если запуздырено
NID: _NOTIFYICONDATA;
FIcon: TIcon;
FTip: string;
ID: integer;
procedure SetIcon(NewIcon: TIcon);
procedure SetTip(NewTip: string);
procedure Refresh;
public
constructor Create(hOwner: THandle);
procedure AddTrayIcon(Icon: TIcon= nil; Tip: string="");
procedure DeleteTrayIcon;
destructor Destroy;
property Icon: TIcon read FIcon write SetIcon;
property Tip: string read FTip write SetTip;
end;
implementation
procedure TSystemTrayIcon.Refresh;
begin
ShowMessage(BoolToStr(Shell_NotifyIcon(NIM_MODIFY, @NID)));
end;
procedure TSystemTrayIcon.SetTip(NewTip: string);
begin
Self.FTip:= NewTip;
If NewTip<>""
Then begin
FillChar(NID.szTip, SizeOf(NID.szTip), 0);
lstrcpyn(NID.szTip, PChar(Self.FTip), SizeOf(nid.szTip));
NID.uFlags:= NID.uFlags or NIF_TIP;
end;
If placed
Then Self.Refresh;
end;
При изменении tip"a, ShowMessage показывает false. Как быть? Подскажете?
← →
Джо © (2006-12-26 17:32) [1]> Как быть?
if not Shell_NotifyIcon (...) then
RaiseLastOSError;
и все узнаешь.
← →
Джо © (2006-12-26 17:34) [2]Кстати, кто будет инициализировать поле cbSize правильным значением?
← →
vain © (2006-12-26 17:43) [3]
> if not Shell_NotifyIcon (...) then
> RaiseLastOSError;
> и все узнаешь
A call to an OS function failed.
И?
> Джо © (26.12.06 17:34) [2]
>
> Кстати, кто будет инициализировать поле cbSize правильным
> значением?
Поправил - на исход не влияет.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.01.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c