【VC开源代码栏目提醒】:网学会员,鉴于大家对VC开源代码十分关注,论文会员在此为大家搜集整理了“FadeTestDlg.cpp”一文,供大家参考学习!
/*----------------------------------------------------------------------------*/
//
// File: FadeTestDlg.cpp
// Author: Phil J. Pearson
// Created: 23 June 2000 19:10
// Last Mod: 23 June 2000 19:12
//
/*----------------------------------------------------------------------------
/*
/* Copyright (C) 2000 by Real World Software
/* All Rights Reserved.
/*
/*----------------------------------------------------------------------------*/
#include "stdafx.h"
#include "faderdemo.h"
#include "FadeTestDlg.h"
#include "FaderWnd.h"
#include "MainFrm.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CFadeTestDlg dialog
CFadeTestDlg::CFadeTestDlg(UINT nID, CWnd* pParent, bool bModal /* = true */)
: CDialog(nID, pParent), m_bModal(bModal)
{
//{{AFX_DATA_INIT(CFadeTestDlg)
m_byAlpha = 255;
m_nFadeTime = 1000;
//}}AFX_DATA_INIT
m_pParentWnd = pParent;
}
CFadeTestDlg::CFadeTestDlg(CWnd* pParent, bool bModal /*= false */)
: m_bModal(bModal)
{
m_byAlpha = 255;
m_nFadeTime = 1000;
m_pParentWnd = pParent;
}
void CFadeTestDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CFadeTestDlg)
DDX_Text(pDX, IDC_ALPHA, m_byAlpha);
DDV_MinMaxByte(pDX, m_byAlpha, 0, 255);
DDX_Text(pDX, IDC_FADETIME, m_nFadeTime);
DDV_MinMaxUInt(pDX, m_nFadeTime, 0, 60000);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CFadeTestDlg, CDialog)
//{{AFX_MSG_MAP(CFadeTestDlg)
ON_BN_CLICKED(IDCLOSE, OnClose)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CFadeTestDlg message handlers
void CFadeTestDlg::OnCancel()
{
// cancel always uses default time and alpha
new CFaderWnd(this);
if (m_bModal)
EndDialog(IDCANCEL);
else
DestroyWindow();
}
void CFadeTestDlg::OnClose()
{
if (UpdateData())
{
new CFaderWnd(this, m_nFadeTime, m_byAlpha);
DestroyWindow();
}
}
void CFadeTestDlg::OnOK()
{
if (m_bModal)
{
if (UpdateData())
{
new CFaderWnd(this, m_nFadeTime, m_byAlpha);
EndDialog(IDOK);
}
}
else
OnClose();
}
void CFadeTestDlg::PostNcDestroy()
{
if (!m_bModal)
{
((CMainFrame *)m_pParentWnd)->m_pModelessDlg = NULL;
delete this;
}
}