Aracılığıyla paylaş


CMFCDesktopAlertWnd Sınıfı

Uyarı

Microsoft Foundation Sınıfları (MFC) kitaplığına destek verilmeye devam ediliyor. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.

sınıfı, CMFCDesktopAlertWnd kullanıcıyı bir olay hakkında bilgilendirmek için ekranda görüntülenen modsuz bir iletişim kutusunun işlevselliğini uygular.

Daha fazla ayrıntı için Visual Studio yüklemenizin VC\atlmfc\src\mfc klasöründe bulunan kaynak koduna bakın.

Sözdizimi

class CMFCDesktopAlertWnd : public CWnd

Üyeler

Genel Yöntemler

Veri Akışı Adı Açıklama
CMFCDesktopAlertWnd::Create Masaüstü uyarı penceresini oluşturur ve başlatır.
CMFCDesktopAlertWnd::GetAnimationSpeed Animasyon hızını döndürür.
CMFCDesktopAlertWnd::GetAnimationType Animasyon türünü döndürür.
CMFCDesktopAlertWnd::GetAutoCloseTime Otomatik kapatma zaman aşımını döndürür.
CMFCDesktopAlertWnd::GetCaptionHeight Resim yazısının yüksekliğini döndürür.
CMFCDesktopAlertWnd::GetDialogSize
CMFCDesktopAlertWnd::GetLastPos Masaüstü uyarı penceresinin ekrandaki son geçerli konumunu döndürür.
CMFCDesktopAlertWnd::GetTransparency Saydamlık düzeyini döndürür.
CMFCDesktopAlertWnd::HasSmallCaption Masaüstü uyarı penceresinin küçük resim yazısı ile görüntülenip görüntülenmeyeceğini belirler.
CMFCDesktopAlertWnd::OnBeforeShow
CMFCDesktopAlertWnd::OnClickLinkButton Kullanıcı masaüstü uyarı menüsünde bulunan bir bağlantı düğmesine tıkladığında çerçeve tarafından çağrılır.
CMFCDesktopAlertWnd::OnCommand Çerçeve, kullanıcı menüden bir öğe seçtiğinde, bir alt denetim bildirim iletisi gönderdiğinde veya hızlandırıcı tuş vuruşu çevrildiğinde bu üye işlevini çağırır. (Geçersiz Kılmalar CWnd::OnCommand.)
CMFCDesktopAlertWnd::OnDraw
CMFCDesktopAlertWnd::P rocessCommand
CMFCDesktopAlertWnd::SetAnimationSpeed Yeni animasyon hızını ayarlar.
CMFCDesktopAlertWnd::SetAnimationType Animasyon türünü ayarlar.
CMFCDesktopAlertWnd::SetAutoCloseTime Otomatik kapatma zaman aşımını ayarlar.
CMFCDesktopAlertWnd::SetSmallCaption Küçük ve normal açıklamalı alt yazılar arasında geçiş yapar.
CMFCDesktopAlertWnd::SetTransparency Saydamlık düzeyini ayarlar.

Açıklamalar

Masaüstü uyarı penceresi saydam olabilir, animasyon efektleriyle birlikte görünebilir ve kaybolabilir (belirtilen bir gecikmeden sonra veya kullanıcı kapat düğmesine tıklayarak kapattığında).

Masaüstü uyarı penceresi ayrıca simge, ileti metni (etiket) ve bağlantı içeren varsayılan bir iletişim kutusu da içerebilir. Alternatif olarak, masaüstü uyarı penceresi uygulamanın kaynaklarından özel bir iletişim kutusu içerebilir.

İki adımda bir masaüstü uyarı penceresi oluşturursunuz. İlk olarak, nesnesini oluşturmak için oluşturucuyu çağırın CMFCDesktopAlertWnd . İkincisi, pencereyi oluşturmak ve nesneye eklemek için CMFCDesktopAlertWnd::Create member işlevini çağırın.CMFCDesktopAlertWnd

nesnesi, CMFCDesktopAlertWnd masaüstü uyarı penceresinin istemci alanını dolduran özel bir alt iletişim kutusu oluşturur. İletişim kutusu, üzerinde konumlandırılan tüm denetimlerin sahibidir.

Açılan pencerede özel bir iletişim kutusu görüntülemek için şu adımları izleyin:

  1. sınıfından bir sınıf türetme CMFCDesktopAlertDialog.

  2. Kaynaklarda bir alt iletişim kutusu şablonu oluşturun.

  3. İletişim kutusu şablonunun kaynak kimliğini ve türetilmiş sınıfın çalışma zamanı sınıf bilgilerini içeren bir işaretçi kullanarak CMFCDesktopAlertWnd::Create öğesini çağırın.

  4. Barındırılan denetimlerden gelen tüm bildirimleri işlemek için özel iletişim kutusunu programla veya barındırılan denetimleri bu bildirimleri doğrudan işleyecek şekilde programla.

Masaüstü uyarı penceresinin davranışını denetlemek için aşağıdaki işlevleri kullanın:

  • CMFCDesktopAlertWnd::SetAnimationType çağrısı yaparak animasyon türünü ayarlayın. Geçerli seçenekler arasında açma, slayt ve solma yer alır.

  • CMFCDesktopAlertWnd::SetAnimationSpeed çağrısı yaparak animasyon çerçevesi hızını ayarlayın.

  • CMFCDesktopAlertWnd::SetTransparency çağrısı yaparak saydamlık düzeyini ayarlayın.

  • CMFCDesktopAlertWnd::SetSmallCaption çağrısı yaparak resim yazısının boyutunu küçük olarak değiştirin. Küçük resim yazısı 7 piksel yüksekliğindedir.

Örnek

Aşağıdaki örnekte, bir CMFCDesktopAlertWnd nesneyi yapılandırmak için sınıftaki çeşitli yöntemlerin CMFCDesktopAlertWnd nasıl kullanılacağı gösterilmektedir. Örnekte animasyon türünün nasıl ayarlanacağı, açılır pencerenin saydamlığının nasıl ayarlanacağı, uyarı penceresinin küçük bir resim yazısı görüntüleneceğini belirtme ve uyarı penceresinin otomatik olarak kapanmadan önce geçmesi gereken süreyi ayarlama gösterilmektedir. Örnekte ayrıca masaüstü uyarı penceresinin nasıl oluşturulacağı ve başlatacağı gösterilmektedir. Bu kod parçacığı, Masaüstü Uyarı Tanıtımı örneğinin bir parçasıdır.

CMFCDesktopAlertWnd *pPopup = new CMFCDesktopAlertWnd;

// int m_nAnimation
pPopup->SetAnimationType((CMFCPopupMenu::ANIMATION_TYPE)m_nAnimation);

// int m_nAnimationSpeed
pPopup->SetAnimationSpeed(m_nAnimationSpeed);

// int m_nTransparency
pPopup->SetTransparency((BYTE)m_nTransparency);

// BOOL m_bSmallCaption
pPopup->SetSmallCaption(m_bSmallCaption);

// BOOL m_bAutoClose, int m_nAutoCloseTime
pPopup->SetAutoCloseTime(m_bAutoClose ? m_nAutoCloseTime * 1000 : 0);

// int m_nPopupSource
if (m_nPopupSource == 0)
{
   // int m_nVisualMngr
   // CPoint m_ptPopup
   // The this pointer points to a CDesktopAlertDemoDlg class which extends the CDialogEx class.
   if (m_nVisualMngr == 5) // MSN-style
   {
      pPopup->Create(this, IDD_DIALOG2, NULL,
                     m_ptPopup, RUNTIME_CLASS(CMSNDlg));
   }
   else
   {
      pPopup->Create(this, IDD_DIALOG1,
                     m_menuPopup.GetSubMenu(0)->GetSafeHmenu(),
                     m_ptPopup, RUNTIME_CLASS(CMyPopupDlg));
   }
}

Devralma Hiyerarşisi

CObject

CCmdTarget

CWnd

CMFCDesktopAlertWnd

Gereksinimler

Üst bilgi: afxDesktopAlertWnd.h

CMFCDesktopAlertWnd::Create

Masaüstü uyarı penceresini oluşturur ve başlatır.

virtual BOOL Create(
    CWnd* pWndOwner,
    UINT uiDlgResID,
    HMENU hMenu = NULL,
    CPoint ptPos = CPoint(-1,-1),
    CRuntimeClass* pRTIDlgBar = RUNTIME_CLASS(CMFCDesktopAlertDialog));

virtual BOOL Create(
    CWnd* pWndOwner,
    CMFCDesktopAlertWndInfo& params,
    HMENU hMenu = NULL,
    CPoint ptPos = CPoint(-1,-1));

Parametreler

pWndOwner
[in, out] Uyarı penceresinin sahibini belirtir. Ardından bu sahip, masaüstü uyarı penceresi için tüm bildirimleri alır. Bu değer NULL olamaz.

uiDlgResID
[in] Uyarı penceresinin kaynak kimliğini belirtir.

hMenu
[in] Kullanıcı menü düğmesine tıkladığında görüntülenen menüyü belirtir. NULL ise, menü düğmesi görüntülenmez.

ptPos
[in] Ekran koordinatlarını kullanarak uyarı penceresinin görüntülendiği ilk konumu belirtir. Bu parametre (-1, -1) ise, uyarı penceresi ekranın sağ alt köşesinde görüntülenir.

pRTIDlgBar
[in] Uyarı penceresinin istemci alanını kapsayan özel bir iletişim kutusu sınıfı için çalışma zamanı sınıfı bilgileri.

params
[in] Uyarı penceresi oluşturmak için kullanılan parametreleri belirtir.

Dönüş Değeri

Uyarı penceresi başarıyla oluşturulduysa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Uyarı penceresi oluşturmak için bu yöntemi çağırabilirsiniz. Uyarı penceresinin istemci alanı, kullanıcıya görüntülenen tüm denetimleri barındıran bir alt iletişim kutusu içerir.

İlk yöntem aşırı yüklemesi, uygulamanın kaynaklarından yüklenen bir alt iletişim kutusu içeren bir uyarı penceresi oluşturur. İlk yöntem aşırı yüklemesi, özel bir iletişim kutusu sınıfı için çalışma zamanı sınıf bilgilerini de belirtebilir.

İkinci yöntem aşırı yüklemesi, varsayılan denetimleri içeren bir uyarı penceresi oluşturur. CMFCDesktopAlertWndInfo Sınıfını değiştirerek hangi denetimlerin görüntüleneceğini belirtebilirsiniz.

CMFCDesktopAlertWnd::GetAnimationSpeed

Animasyon hızını döndürür.

UINT GetAnimationSpeed() const;

Dönüş Değeri

Uyarı penceresinin milisaniye cinsinden animasyon hızı.

Açıklamalar

Animasyon hızı uyarı penceresinin ne kadar hızlı açılıp kapandığı açıklanmaktadır.

CMFCDesktopAlertWnd::GetAnimationType

Animasyon türünü döndürür.

CMFCPopupMenu::ANIMATION_TYPE GetAnimationType();

Dönüş Değeri

Aşağıdaki animasyon türlerinden biri:

  • NO_ANIMATION

  • AÇILMAK

  • KAYDIRAK

  • SOLMAK

  • SYSTEM_DEFAULT_ANIMATION

CMFCDesktopAlertWnd::GetAutoCloseTime

Otomatik kapatma zaman aşımını döndürür.

int GetAutoCloseTime() const;

Dönüş Değeri

Milisaniye cinsinden uyarı penceresinin otomatik olarak kapatılacağı süre.

Açıklamalar

Uyarı penceresi otomatik olarak kapanmadan önce geçmesi gereken süreyi belirlemek için bu yöntemi kullanın.

CMFCDesktopAlertWnd::GetCaptionHeight

Resim yazısının yüksekliğini döndürür.

virtual int GetCaptionHeight();

Dönüş Değeri

Resim yazısının piksel cinsinden yüksekliği.

Açıklamalar

Bu yöntem türetilmiş bir sınıfta geçersiz kılınabilir. Açılan pencerenin küçük resim yazısını veya Windows API işlevinden GetSystemMetrics(SM_CYSMCAPTION)alınan değeri görüntülemesi gerekiyorsa, varsayılan uygulama: küçük resim yazısı yükseklik değerini (7 piksel) döndürür.

CMFCDesktopAlertWnd::GetLastPos

Masaüstü uyarı penceresinin ekrandaki son konumunu döndürür.

CPoint GetLastPos() const;

Dönüş Değeri

Ekran koordinatlarında bir nokta.

Açıklamalar

Bu yöntem, uyarı penceresinin ekrandaki son geçerli konumunu döndürür.

CMFCDesktopAlertWnd::GetTransparency

Saydamlık düzeyini döndürür.

BYTE GetTransparency() const;

Dönüş Değeri

0 ile 255 (dahil) arasında bir saydamlık düzeyi. Değer ne kadar büyükse, pencere o kadar opak olur.

Açıklamalar

Uyarı penceresinin geçerli saydamlık düzeyini almak için bu yöntemi kullanın.

CMFCDesktopAlertWnd::HasSmallCaption

Masaüstü uyarı penceresinin küçük bir resim yazısı mı yoksa normal boyutlu bir resim yazısı mı olduğunu belirler.

BOOL HasSmallCaption() const;

Dönüş Değeri

Açılan pencere küçük bir açıklamalı alt yazıyla görüntüleniyorsa DOĞRU; Açılan pencere normal boyutlu bir resim yazısıyla görüntüleniyorsa YANLIŞ.

Açıklamalar

Açılan pencerenin küçük bir resim yazısı mı yoksa normal boyutlu resim yazısı mı olduğunu belirlemek için bu yöntemi kullanın. Varsayılan olarak, küçük resim yazısı 7 piksel yüksekliğindedir. Windows API işlevini GetSystemMetrics(SM_CYCAPTION)çağırarak normal boyutlu resim yazısının yüksekliğini elde edebilirsiniz.

CMFCDesktopAlertWnd::OnBeforeShow

virtual BOOL OnBeforeShow(CPoint&);

Parametreler

[in] CPoint &

Dönüş Değeri

Açıklamalar

CMFCDesktopAlertWnd::OnClickLinkButton

Kullanıcı masaüstü uyarı menüsünde bulunan bir bağlantı düğmesine tıkladığında çerçeve tarafından çağrılır.

virtual BOOL OnClickLinkButton(UINT uiCmdID);

Parametreler

uiCmdID
[in] Bu parametre kullanılmaz.

Dönüş Değeri

Her zaman YANLIŞ.

Açıklamalar

Kullanıcı uyarı penceresindeki bağlantıya tıkladığında bildirim almak istiyorsanız, türetilmiş bir sınıfta bu yöntemi geçersiz kılın.

CMFCDesktopAlertWnd::OnCommand

virtual BOOL OnCommand(
    WPARAM wParam,
    LPARAM lParam);

Parametreler

[in] Wparam

[in] Lparam

Dönüş Değeri

Açıklamalar

CMFCDesktopAlertWnd::OnDraw

virtual void OnDraw(CDC* pDC);

Parametreler

[in] Pdc

Açıklamalar

CMFCDesktopAlertWnd::P rocessCommand

BOOL ProcessCommand(HWND hwnd);

Parametreler

[in] Hwnd

Dönüş Değeri

Açıklamalar

CMFCDesktopAlertWnd::SetAnimationSpeed

Yeni animasyon hızını ayarlar.

void SetAnimationSpeed(UINT nSpeed);

Parametreler

nSpeed
[in] Yeni animasyon hızını milisaniye cinsinden belirtir.

Açıklamalar

Uyarı penceresi için animasyon hızını ayarlamak için bu yöntemi çağırın. Varsayılan animasyon hızı 30 milisaniyedir.

CMFCDesktopAlertWnd::SetAnimationType

Animasyon türünü ayarlar.

void SetAnimationType(CMFCPopupMenu::ANIMATION_TYPE type);

Parametreler

type
[in] Animasyon türünü belirtir.

Açıklamalar

Animasyon türünü ayarlamak için bu yöntemi çağır. Aşağıdaki değerlerden birini belirtebilirsiniz:

  • NO_ANIMATION

  • AÇILMAK

  • KAYDIRAK

  • SOLMAK

  • SYSTEM_DEFAULT_ANIMATION

CMFCDesktopAlertWnd::SetAutoCloseTime

Otomatik kapatma zaman aşımını ayarlar.

void SetAutoCloseTime(int nTime);

Parametreler

nTime
[in] Uyarı penceresi otomatik olarak kapanmadan önce geçen milisaniye cinsinden süre.

Açıklamalar

Kullanıcı pencereyle etkileşim kurmazsa uyarı penceresi belirtilen süreden sonra otomatik olarak kapatılır.

CMFCDesktopAlertWnd::SetSmallCaption

Küçük ve normal boyutlu resim yazıları arasında geçiş yapar.

void SetSmallCaption(BOOL bSmallCaption = TRUE);

Parametreler

bSmallCaption
[in] Uyarı penceresinin küçük bir resim yazısı görüntüleneceğini belirtmek için TRUE; aksi takdirde, uyarı penceresinin normal boyutlu bir resim yazısı görüntüleneceğini belirtmek için YANLIŞ.

Açıklamalar

Küçük veya normal boyutlu resim yazısını görüntülemek için bu yöntemi çağırın. Varsayılan olarak, küçük resim yazısı 7 piksel yüksekliğindedir. Windows API işlevini GetSystemMetrics(SM_CYCAPTION)çağırarak normal resim yazısının boyutunu elde edebilirsiniz.

CMFCDesktopAlertWnd::SetTransparency

Açılan pencerenin saydamlık düzeyini ayarlar.

void SetTransparency(BYTE nTransparency);

Parametreler

nTransparency
[in] Saydamlık düzeyini belirtir. Bu değer 0 ile 255 (dahil) arasında olmalıdır. Değer ne kadar büyükse, pencere o kadar opak olur.

Açıklamalar

Açılan pencerenin saydamlık düzeyini ayarlamak için bu işlevi çağırın.

CMFCDesktopAlertWnd::GetDialogSize

virtual CSize GetDialogSize();

Dönüş Değeri

Açıklamalar

Ayrıca bkz.

Hiyerarşi Grafiği
Sınıflar
CMFCDesktopAlertWndInfo Sınıfı
CMFCDesktopAlertDialog Sınıfı
CWnd Sınıfı