Проектирование диалоговой панели
Связывание кода с событием BN_CLICKED кнопки Clear
void CFourUpDlg::OnDealcards()
{
//Отнять два доллара
при сдаче карт
m_Amt_Remaining-=2.00;
//Сдать карты
DealCards();
//Подсчитать выйгрыш
CalculateWinnings();
//Изменить заголовок элемента Group Box
CString
s;
s.Format("Amount Remaining $ %.2f",
m_Amt_Remaining);
m_Amt_Left.SetWindowText(s);
}
void CFourUpDlg::DealCards()
{
//Обнуляем заначение выпавших карт одной масти
for(int i=0;
i<4;i++)m_Cards[i]=0;
//Меняем иконку в элементах управления
иконками
m_Card1.SetIcon(PickRandomCard());
m_Card2.SetIcon(PickRandomCard());
m_Card3.SetIcon(PickRandomCard());
m_Card4.SetIcon(PickRandomCard());
}
HICON&
CFourUpDlg::PickRandomCard()
{
//Выбрать номер карты
случайным образом
int num=(rand()%4);
/*Проссумировать
кол-во выпавших карт одной масти*/
m_Cards[num]++;
/*В зависимости от выпавшего номера вернуть адрес
иконки*/
switch(num)
{
case 0: return m_Club;
case 1:
return m_Diamond;
case 2: return m_Heart;
}
return
m_Spade;
}
void CFourUpDlg::CalculateWinnings()
{
int
pairs=0;
for(int i=0; i<4;
i++)
{
if(m_Cards[i]==2)
{
if(pairs>0)
{
m_Amt_Remaining+=3.00;
break;
}
else
{
pairs++;
}
}
else
if(m_Cards[i]==3)
{
m_Amt_Remaining+=6.00;
break;
}
else
if
(m_Cards[i]==4)
{
m_Amt_Remaining+=9.00;
break;
}
}
}
void CFourUpDlg::OnCancel()
{
///-Ваш код начинается здесь-///
CString s;
//Добавить в сторку размер
выйгрыша
s.Format("Good game! I have $
%.2f.",m_Amt_Remaining);
//Выдать окно сообщения
MessageBox(s,"Thank you for game in FourUp!");
///-Ваш код заканчивается здесь-///
CDialog::OnCancel();
}
Радио для всех © |