Добавляем еще один рисунок в ресурсы:

На диалоговое окно кнопку и код к ней:
void CMyDIalog::OnButton1()
{
m_St.SetBitmap(::LoadBitmap(AfxGetApp()->m_hInstance,
MAKEINTRESOURCE(IDB_BITMAP2)) );
CRect tempRect;
GetClientRect(tempRect);
m_St.SetWindowPos(0,tempRect.top,tempRect.left,
tempRect.right,tempRect.bottom,0);
Invalidate();
}
Нам помимо смены картинки пришлось еще раз изменить размер, мы это делали в OnInitDialog(), но ведь все это можно вынести в отдельную функцию типа AdaptiveImage(). Запускаем:

Нажимаем, на кнопку.

Ну, а как менять цвет с OnPaint() понятно, подставить другой идентификатор картинки. Иы идентификатор меняем на переменную:
CBitmap cb;
cb.LoadBitmap(IDB_BITMAP1); // Нужно подставлять переменную в которой идентификатор рисунка
CBrush tempBrush;
А дальше присваиваем этой переменной нужный идентификатор картинки и вызываем Invalidate().