IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   C ve C++ (https://www.ircforumlari.net/c-ve-c/)
-   -   System Tray Uygulaması (https://www.ircforumlari.net/c-ve-c/600411-system-tray-uygulamasi.html)

Swat 11 Temmuz 2014 10:22

System Tray Uygulaması
 
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.

Kod:

//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
#include <shellapi.h>
 
NOTIFYICONDATA stray;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
 
void __fastcall TForm1::Hatrlatc1Click(TObject *Sender)
{
Form1->Show();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::k1Click(TObject *Sender)
{
Application->Terminate();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
stray.cbSize=sizeof(NOTIFYICONDATA);
stray.hWnd=Form1->Handle;
stray.uID=0;
strcpy(stray.szTip,"Hatırlatıcı");
stray.uCallbackMessage=0x200;
stray.uFlags=7;
stray.hIcon=Application->Icon->Handle;
Shell_NotifyIcon(0,&stray);
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
Form1->Hide();
Action=caNone;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
      int X, int Y)
{
TPoint m;
GetCursorPos(&m);
switch(X)
{
case 0x203 : Form1->Show(); break;
case 0x204 : PopupMenu1->Popup(m.x,m.y);
}
}
//---------------------------------------------------------------------------



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 04:05.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk