Вниз
Скачать: CL | DM;

Левая/правая кнопа мыши   Найти похожие ветки 

← →
X3M   (2004-12-26 22:36) [0]

Как определить какая кнопа нажата, а потом выполнить определённые действия для каждой из кнопок?????


← →
Shnabs   (2004-12-26 22:41) [1]

Может так?

procedure MouseDown(Sender: TObject; Button:
 Shift: TShiftState; X, Y: Integer);
begin
if Button = mbleft then
begin
...
end;

if Button = mbright then
begin
...
end;

end;


← →
X3M   (2004-12-26 22:47) [2]

maybe, ща попробую


← →
X3M   (2004-12-26 22:50) [3]

пасиба, работает. тока теперь возникает ещё одна проблема: не могу скрыть главную форму при запуске приложения. Дочерние формы скрываются в трей (но пока почему-то оттуда не вылазят) а главное не могу скрыть.... как сделать?


← →
Colonel   (2005-01-05 20:49) [4]

Способов много. У меня допустим в старых прогах, когда нужно было скрывать форму и все такое вот что стояло :


procedure TForm1.FormCreate(Sender: TObject);
begin
 Application.OnMinimize:=AppMinimize;
 Application.OnRestore:=AppMinimize;
 Application.Minimize;
 AppMinimize(@Self);
 ...................
end;

procedure TForm1.AppMinimize(Sender: TObject);
begin
 ShowWindow(Application.Handle,SW_HIDE);
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
 icon_(self,nim_add);
 showform(sw_hide,false);
 application.ShowMainForm:=false;
end;

procedure tform1.showform(a:integer;b:boolean);
begin
 ShowWindow(Application.Handle,a);
 ShowWindow(Application.MainForm.Handle,a);
 application.ShowMainForm:=b;
end;

procedure tform1.Icon_(sender:tobject;dwMessage:DWORD);
begin
 with nid do begin
               cbSize:=SizeOf( TNotifyIconData );
               Wnd:=form1.Handle;
               uID:=1;
               uFlags:=NIF_ICON or NIF_MESSAGE or NIF_TIP;
               uCallbackMessage:=WM_USER+100;
               hIcon:=Application.Icon.Handle;
               szTip:="Volume control [Designed by Colonel]"+#13+"Регулировка: Num */-/+";
             end;
 Shell_NotifyIcon(dwMessage,@nid);
end;


Это стопудово спрячет прогу при старте в трай, а в таскбаре ничего отображаться не будет.
С FormCreate,Activate, думаю все понятно. Ну, а в Icon_ собсно происходит появление иконки приложения в трее. А вот еще забыл по обработке кнопок :


procedure tform1.FormIcon(var Msg:TMessage);
var
 p:tpoint;
begin
 case Msg.lParam of
                  WM_LBUTTONDOWN : //Нажатие левой кнопки на                                     иконке
                                  begin
                                    getcursorpos(p);
                                    SetForegroundWindow(Handle);
                                    pm.Popup(p.X,p.y);
                                    PostMessage(Handle,WM_NULL,0,0); //чтобы попап не глючил
                                  end;
 end;
end;


В public нужно прописать :

procedure FormIcon(var Msg:TMessage); message WM_USER+100;


Ну, вот и все. Желаю удачи.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
9-1097515719
Falcon(TFsoft)
2004-10-11 21:28
2005.01.23
Не нормальная работа DelphiX


1-1103922588
oleg_tretyakov
2004-12-25 00:09
2005.01.23
Итог по страницам в QuickReport


14-1104841168
Dimedrol
2005-01-04 15:19
2005.01.23
Как ставить SPacks на NT4 ?


1-1105430544
AndyDel
2005-01-11 11:02
2005.01.23
Компонент типа Object Inspectora


1-1105375809
Santa][P
2005-01-10 19:50
2005.01.23
EROR: Дельфи вызывает ошибку!




   Наверх