Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

СообЧА. Программирование на Delphi


Служба Рассылок Subscribe.Ru проекта Citycat.Ru


  Сочные штучки  Подписчиков: 788 
   
.::::: СообЧа - Программирование на Delphi :::::.
  © 2000 - 2001COOLer  Дизайн: Yoghurt 
   

 

Оглавление
  В выпуске  Рассылка СообЧА 
    
  • Сочные штучки

  • Книги
  •  
    Рассылки Subscribe.Ru
    СообЧа (СООБщество ЧАйников). Обмен опытом, вопросы, ответы.

     Назад к оглавлению  
      
      Сочные штучки 
     
      

    Сочные штучки...

    У Дельфи есть много весьма полезных и забавных функций, некоторые очень легко делать, а некоторые не очень...

    На этот раз , я поведаю о самом сочном и популярном среди новичков и любителей "пошутить" при помощи программ.

    Сначала расскажу о том, как прятать в Tray свою программу ... 

    1. создаем новый проект.

    2. сразу после USES добавляем WM_MYNOTIFY = WM_APP+1;

    3. ищите строчки private ,public, end... в приват добавляем 

    procedure OnMess(var Mess: TMessage); message WM_MYNOTIFY;
    procedure OnMinimize(Sender: TObject)

     

       4. в tform1.onminimize пишем Application.Restore;

       5. пишем вот такую процедуру :

    procedure TForm1.OnMess(var Mess: TMessage);
    var P: TPoint;
    begin
    if(Mess.LParam=516) then begin
    GetCursorPos(P);
    popupmenu1.Popup(p.x,p.y) ;


    end;
    if(Mess.LParam=515) then begin
    Show;
    end;
    end;

     

      6. в декларации свойства form1.oncreate, пишем такое:

    const
    SS = 'This is test'+#0;
    var nim: TNotifyIconData;

      7. потом в самом свойстве

    nim.cbSize:=sizeof(nim);
    nim.Wnd:=Handle;
    nim.uID:=0;
    nim.uFlags:=NIF_ICON or NIF_MESSAGE or NIF_TIP;
    nim.uCallbackMessage:=WM_MYNOTIFY;
    nim.hIcon:=Application.Icon.Handle;
    Move(SS[1],nim.szTip[0],Length(SS));
    Shell_NotifyIcon(NIM_ADD,@nim);
    Application.OnMinimize:=Self.OnMinimize;

      8.Приводим tform1.ondestroy к следующему виду

     

    procedure TForm1.FormDestroy(Sender: TObject);
    var nim: TNotifyIconData;
    begin
    nim.cbSize:=sizeof(nim);
    nim.Wnd:=Handle;
    nim.uID:=0;
    nim.uFlags:=0;
    nim.uCallbackMessage:=0;
    nim.hIcon:=0;
    Shell_NotifyIcon(NIM_DELETE,@nim);

    end;

    9. Чтобы достать приложение из traybar сделайте  popup menu к п. 5 и добавьте в него строчку show с этим кодом:

    ShowWindow(Application.Handle,sw_show);
    coolform1.enabled:=true;
    coolform1.visible:=true;

    Вот и все, надеюсь у вас заработает...

     

    Вот еще маленькая функция, она выдвигает сидючок Ж-))

    uses MMsystem;

    .....

    mciSendString('Set cdaudio door open wait', nil, 0, handle); открыть

     

    mciSendString('Set cdaudio door closed wait', nil, 0, handle);закрыть

     

    А вот мое любимое...

    Данная функция прячет кнопку приложения с панели задач

    ShowWindow(Application.Handle,sw_Hide);

    не забудьте продумать появление кнопки, а то всякое бывает...

    ShowWindow(Application.Handle,sw_show);

    Ну, счастливо вам "поиграться"
    P.S. Лично я со всем этим наскреб неплохой вирус... Во смеху то было ,когда он всякие окошки закрывал без предупреждения Ж-)) 



    Статью писал : Pixel (pixel@novgorod.net http://pixelsoft.narod.ru)


    © COOLer


    Zaluskiy Anton(COOLer)    - ведущий проекта    "Мир Delphi"

    Наш спонсор - лучший интернет магазин:

    о3он TopList

    http://subscribe.ru/
    E-mail: ask@subscribe.ru
    Отписаться Рейтингуется SpyLog

    В избранное