Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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.011 c
6-1155810638
DesWind
2006-08-17 14:30
2007.01.14
TIdUDPserver


6-1155559604
Shaman_
2006-08-14 16:46
2007.01.14
idHTTP вылетает на HTTP/1.1 500 Internal Server Error


15-1167103101
Slider007
2006-12-26 06:18
2007.01.14
С днем рождения ! 26 декабря


2-1167026849
inkvizitor
2006-12-25 09:07
2007.01.14
точка в делфи


2-1166771534
Officeman
2006-12-22 10:12
2007.01.14
форматирование строки. strtoint





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский