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

Вниз

помогите с TrayIcon   Найти похожие ветки 

 
VladTen   (2002-10-30 11:06) [0]

Подскажите пожалуйста, как создать TrayIcons и PopupMenu к нему. Если есть у кого Example или ссылка на него, то напишите пожалуйста. Заранее благодарен.


 
Opuhshii   (2002-10-30 12:06) [1]

в факе, на sources.ru ... в хелпе,..


 
Геннадий   (2002-11-02 21:46) [2]

Вот исходник, форму сам сделай. Удачи!
======================


unit TrayUnit;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ShellAPI, ImgList, Buttons, ExtCtrls, Menus;

const WM_Icon = WM_User+999;

type
TTrayForm = class(TForm)
ImageList1: TImageList;
HideBitBtn: TBitBtn;
HideTimer: TTimer;
TrayPopupMenu: TPopupMenu;
N_Show: TMenuItem;
N_Exit: TMenuItem;
N1: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure HideBitBtnClick(Sender: TObject);
procedure HideTimerTimer(Sender: TObject);
procedure N_ShowClick(Sender: TObject);
procedure N_ExitClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure WMIcon(var Msg: TMessage); message WM_Icon;
end;

const
Ico_Num = 1;

var
TrayForm: TTrayForm;

implementation

{$R *.dfm}

procedure TTrayForm.FormCreate(Sender: TObject);
var
Info: TNotifyIconData;
Ico : TIcon;
begin
Ico:= TIcon.Create;
ImageList1.GetIcon(0, Ico);

Info.cbSize:= SizeOf(TNotifyIconData);
Info.Wnd:= Self.Handle;
Info.uID:= Ico_Num;
Info.uFlags:= nif_Icon or nif_Tip or nif_Message;
Info.hIcon:= Ico.Handle;
Info.szTip:= "This is TIP";
Info.uCallbackMessage:= WM_Icon;

Shell_NotifyIcon(nim_Add, @Info);

Ico.Free;
end;

procedure TTrayForm.WMIcon(var Msg: TMessage);
begin
If (Msg.WParam = Ico_Num) and (Msg.LParam = WM_RButtonDown)
then TrayPopupMenu.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
end;

procedure TTrayForm.FormDestroy(Sender: TObject);
var
Info: TNotifyIconData;
begin
Info.cbSize:= SizeOf(TNotifyIconData);
Info.Wnd:= Self.Handle;
Info.uID:= Ico_Num;

Shell_NotifyIcon(nim_Delete, @Info);

end;

procedure TTrayForm.HideBitBtnClick(Sender: TObject);
begin
HideTimer.Enabled:= True;
end;

procedure TTrayForm.HideTimerTimer(Sender: TObject);
begin
HideTimer.Enabled:= False;
TrayForm.Hide;
end;

procedure TTrayForm.N_ShowClick(Sender: TObject);
begin
TrayForm.Show;
end;

procedure TTrayForm.N_ExitClick(Sender: TObject);
begin
Application.Terminate;
end;

end.



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

Форум: "Система";
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
6-37252
_ol_
2002-11-06 17:11
2003.01.13
Всего лишь написать telnet...


1-37010
maxim2
2002-12-31 08:36
2003.01.13
Помогите разобраться с MSAgent


1-37102
MadGhost
2003-01-04 07:20
2003.01.13
Как отключить и включить потом мышу и клаву


3-36914
Che
2002-12-17 01:57
2003.01.13
SQL


1-37108
delpher_gray
2002-12-30 19:38
2003.01.13
Почему





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