Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Цвет заливки ProgressBar?

8.9K
28 января 2005 года
Забияка
8 / / 28.01.2005
Подскажите, есть ли возможность изменить его?
1
28 января 2005 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by Забияка
Подскажите, есть ли возможность изменить его?


Можно поменять фон. Если нужно менять цвет переднего плана - используй CGauge.

246
31 января 2005 года
GIZMO
1.8K / / 30.07.2004
Цитата:
Originally posted by Забияка
Подскажите, есть ли возможность изменить его?


Нет. Используй TrackBar + NM_CUSTOMDRAW.

8.9K
31 января 2005 года
Забияка
8 / / 28.01.2005
Цитата:
Originally posted by GIZMO

Нет. Используй TrackBar + NM_CUSTOMDRAW.



Хм, вот как?
А поподробнее можно, пожалуйста?

246
01 февраля 2005 года
GIZMO
1.8K / / 30.07.2004
Цитата:
Originally posted by Забияка


Хм, вот как?
А поподробнее можно, пожалуйста?


Код:
// in hpp
class TForm1 : public TForm
{
__published:
  TTrackBar *TrackBar;
private:
  MESSAGE void __fastcall WMNotify(TMessage& Msg);
public:
  __fastcall TForm1(TComponent* Owner);

  BEGIN_MESSAGE_MAP
  MESSAGE_HANDLER(
                 WM_NOTIFY, TMessage, WMNotify)
  END_MESSAGE_MAP(TForm)
};

// in cpp
void __fastcall TForm1::WMNotify(TMessage& Msg)
{
  // получаем указатель на NMHDR struct
  LPNMHDR pnmh = reinterpret_cast
                 <LPNMHDR>(Msg.LParam);

  // если поле code равно NM_CUSTOMDRAW and
  // поле from есть наша trackbar
  if (pnmh->code == NM_CUSTOMDRAW && pnmh->hwndFrom==TrackBar->Handle)
  {
    //
    // рисуем...
    // NMHDR - смотри в MSDN
    // а вообще Я наверно не прав, легче взять CGauge
    return;
  }

  // обработчик по умолчанию...
  TForm::Dispatch(&Msg);
}
8.9K
01 февраля 2005 года
Забияка
8 / / 28.01.2005
Спасибо!
9.2K
02 февраля 2005 года
Noer
10 / / 03.01.2005
Цитата:
Originally posted by Забияка
Спасибо!


PostMessage(ProgressBar1->Handle,0x0409,0,clRed);

301
02 февраля 2005 года
lord Kelvin
897 / / 08.11.2004
Цитата:
Originally posted by Noer

PostMessage(ProgressBar1->Handle,0x0409,0,clRed);


Если программа в XP стиле, то это не работает. А жаль.=(

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог