Статья: Реализация стиля Office XP

r = GetRValue(shdw)+10;

g = GetGValue(shdw)+10;

b = GetBValue(shdw)+10;

shdw = PALETTERGB(r,g,b);

CPen pen;

pen.CreatePen(0, 1, shdw);

// Заливаем область

dc.FillSolidRect(rt, face);

dc.SelectObject(&pen);

// Перебираем все бары

for(UINT i = 0; i != GetReBarCtrl().GetBandCount(); i++)

{

GetReBarCtrl().GetRect(i, rBand);// Получаемрект

for(int y = 4; y != rBand.Height()-4; y+=2)// Ресуемсимпатичнуюзакраску

{

dc.MoveTo(rBand.left+3,rBand.top+y);

dc.LineTo(rBand.left+6,rBand.top+y);

}

}

// Do not call CReBar::OnPaint() for painting messages

}

Всё! Теперь только меняем тип ReBar на CReBarXP(обязательно вставив перед объявлением класса include-команду).

StatusBarXP

Так, так... ToolBarXP и ReBarXP есть. Теперь StatusBar'ом займёмся. Проект как создавать я писать не буду, сразу переходим к делу.

Добавляем новый класс CStatusBarXP, наследованный от CStatusBar. В нём переопределяем OnPaint и пишим тудыва:

void CStatusBarXP::OnPaint()

{

CPaintDC dc(this); // device context for painting

CRect rt, rPane;

К-во Просмотров: 360
Бесплатно скачать Статья: Реализация стиля Office XP