Главная страница
    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.038 c
14-1105111706
Programming_GOD
2005-01-07 18:28
2005.01.23
Где можно получить сертификацию Delphi


1-1105449990
Qtintf
2005-01-11 16:26
2005.01.23
Qtintf.dll


14-1104982216
Думкин
2005-01-06 06:30
2005.01.23
С Днем рождения! 6 января


1-1105609194
Vetal
2005-01-13 12:39
2005.01.23
А как изменить цвет кнопки?


4-1102087680
sashas
2004-12-03 18:28
2005.01.23
Переименовать окно





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