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

Вниз

Хочу прогамму в Tray положить   Найти похожие ветки 

 
Igor_thief   (2002-02-11 16:31) [5]

Я игрался с этим вопросиком и вот что у меня получилось:
unit MainUnit;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ShellApi, Menus;

type
TForm1 = class(TForm)
PopupMenu1: TPopupMenu;
Show1: TMenuItem;
Exit1: TMenuItem;
procedure FormDestroy(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Show1Click(Sender: TObject);
procedure Exit1Click(Sender: TObject);
private
{ Private declarations }
public
procedure OnMinimizeEvt(Sender:TObject);
procedure OnMess(var Msg:TMessage);message wm_app+1;
end;

var
Form1: TForm1;
Tray:TNotifyIconData;
implementation

{$R *.dfm}

procedure TForm1.OnMinimizeEvt(Sender:TObject);
begin
{Скрываем показание кеопки с таскбара}
ShowWindow(Application.Handle,SW_HIDE);
{Забрасываем приложение в трей}
with Tray do
begin
cbSize:=sizeof(Tray);
Wnd:=Handle;
uID:=0;
uFlags:=NIF_MESSAGE or NIF_ICON or NIF_TIP;
hIcon:=Application.Icon.Handle;
uCallbackMessage:=WM_APP+1;
szTip:="Masterpiece";
end;
Shell_NotifyIcon(NIM_ADD,@Tray);
end;

procedure TForm1.OnMess(var Msg:TMessage);
begin
if Msg.lParam=WM_RBUTTONUP then
PopupMenu1.Popup(Mouse.CursorPos.X,Mouse.CursorPos.y);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
{Уничтожаем иконку из трея}
with Tray do
begin
cbSize:=sizeof(Tray);
Wnd:=Handle;
uID:=0;
uFlags:=0;
hIcon:=0;
uCallbackMessage:=WM_APP+1;
end;
Shell_NotifyIcon(NIM_DELETE,@Tray);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMinimize:=OnMinimizeEvt;
end;

procedure TForm1.Show1Click(Sender: TObject);
begin
{Вывод главной формы}
ShowWindow(Application.Handle,SW_SHOWNOACTIVATE);
end;

procedure TForm1.Exit1Click(Sender: TObject);
begin
Close;
Form1.Release;
end;

end.
-------------------------
Это пример как сворачивать окно при нажатии кнопки минимизации и есть работа с popupmenu. Ghb минимизации форма находится только в трее. Если нужен архив с исходником, то свисни. Чтобы написать этот исходник, мне пришлось разобрать кучу подобных, разобраться в них и создать свойю Лично мне мой исходник очень нравится. Я вот хочу есщё компонент создать, который будет кидать прогу в трей.



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

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

Наверх





Память: 0.44 MB
Время: 0.004 c
1-46432
Иван
2002-04-02 21:51
2002.04.15
отправка email


1-46433
DenKop
2002-04-01 13:07
2002.04.15
Шифрование с помощью RSA RC5.


1-46434
Alex_Sudakov
2002-04-02 22:17
2002.04.15
SP2


1-46355
michael_B
2002-04-03 19:40
2002.04.15
помогите начинающему TComboBox.Items


1-46308
Miron12
2002-04-03 13:49
2002.04.15
Средства отладки приложений под винды





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