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

Вниз

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

 
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 вся ветка

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

Наверх




Память: 0.46 MB
Время: 0.036 c
3-1103556377
TAN_K
2004-12-20 18:26
2005.01.23
DataTimePicker


1-1105533171
Express
2005-01-12 15:32
2005.01.23
Canvas


14-1104959561
jack128
2005-01-06 00:12
2005.01.23
История про Мудрый Хост


4-1102266958
Chlavik
2004-12-05 20:15
2005.01.23
Процесы в Windows ..


3-1103479027
alextov
2004-12-19 20:57
2005.01.23
в Fast Report после экспорта в html не открываются отчеты





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