Programlama | Programlama Dilleri | C Programlama Dili |C++

Anasayfa Programlama C++ Builder System Tray Uygulaması


System Tray Uygulaması

AÇIKLAMA

C++ Builder 6 projesidir.

System Tray uygulamasını anlatan bir örnektir. System tray bilgisayar açıldığında çalışması gereken programlarda olmazsa olmaz durumlardan biridir.System tray bilgisayar saatin hemen yanında yer alan yerdir.

System tray uygulamasıyla Msn Messenger programının çalışma mantığına benzer örnekler geliştirebilirsiniz.

Programda gözden kaçacak ek bir ayrıntıyı belirtmekde yarar var. Başlangıçta ana formun görünmemesi için;

Project1.cpp içindeki 

Application->CreateForm(__classid(TForm1), &Form1); satırından sonra

Form1->ShowMainForm=false; 

satırı eklenmelidir. Bu sayede program açıldığında ana form görünmeyecektir.

Bu program Hatırlatıcı Paket Programının Bir Parçasıdır.

Hatırlatıcı Programını Aşağıdaki Linkten İndirebilirsiniz

Linki Görebilmeniz İçin Üye Olmanız Gerekmektedir...

Üye Kayıt

Programın Tamamını Aşağıdaki Linkten İndirebilirsiniz

Linki Görebilmeniz İçin Üye Olmanız Gerekmektedir...

Üye Kayıt

Program Kodu:

  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5.  
  6. #include "Unit1.h"
  7. #include <shellapi.h>
  8.  
  9. NOTIFYICONDATA stray;
  10. //---------------------------------------------------------------------------
  11. #pragma package(smart_init)
  12. #pragma resource "*.dfm"
  13. TForm1 *Form1;
  14. //---------------------------------------------------------------------------
  15. __fastcall TForm1::TForm1(TComponent* Owner)
  16.         : TForm(Owner)
  17. {
  18. }
  19. //---------------------------------------------------------------------------
  20.  
  21.  
  22. void __fastcall TForm1::Hatrlatc1Click(TObject *Sender)
  23. {
  24. Form1->Show();
  25. }
  26. //---------------------------------------------------------------------------
  27.  
  28. void __fastcall TForm1::k1Click(TObject *Sender)
  29. {
  30. Application->Terminate();
  31. }
  32. //---------------------------------------------------------------------------
  33.  
  34. void __fastcall TForm1::FormCreate(TObject *Sender)
  35. {
  36. stray.cbSize=sizeof(NOTIFYICONDATA);
  37. stray.hWnd=Form1->Handle;
  38. stray.uID=0;
  39. strcpy(stray.szTip,"Hatırlatıcı");
  40. stray.uCallbackMessage=0x200;
  41. stray.uFlags=7;
  42. stray.hIcon=Application->Icon->Handle;
  43. Shell_NotifyIcon(0,&stray);
  44. }
  45. //---------------------------------------------------------------------------
  46.  
  47. void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
  48. {
  49. Form1->Hide();
  50. Action=caNone;
  51. }
  52. //---------------------------------------------------------------------------
  53. void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
  54.       int X, int Y)
  55. {
  56. TPoint m;
  57. GetCursorPos(&m);
  58. switch(X)
  59. {
  60. case 0x203 : Form1->Show(); break;
  61. case 0x204 : PopupMenu1->Popup(m.x,m.y);
  62. }
  63. }
  64. //---------------------------------------------------------------------------
  65.  

Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Perşembe, 07 Nisan 2011 22:42 )