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

Ваш аккаунт

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

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

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

TrackBar как регулировка громкости

376
18 мая 2005 года
Absolut
220 / / 22.11.2002
Господа, совсем замучался. Никак не могу из TTrackBar сделать что-то похожее на ползунок из регулировки громкости в винде. Может компонент совсем не тот ;( Уже все свойства перебрал.
246
19 мая 2005 года
GIZMO
1.8K / / 30.07.2004
Цитата:
Originally posted by Absolut
Господа, совсем замучался. Никак не могу из TTrackBar сделать что-то похожее на ползунок из регулировки громкости в винде. Может компонент совсем не тот ;( Уже все свойства перебрал.


Это с прямоугольным Slider-ом?

376
19 мая 2005 года
Absolut
220 / / 22.11.2002
Цитата:
Originally posted by GIZMO
Это с прямоугольным Slider-ом?


Прямоугольный слайдер по узенькой тёмной полоске без рисок. Стандартно в виндах !

246
19 мая 2005 года
GIZMO
1.8K / / 30.07.2004
Цитата:
Originally posted by Absolut
Прямоугольный слайдер по узенькой тёмной полоске без рисок. Стандартно в виндах !


Получается - TickStyle=tsNone?

376
19 мая 2005 года
Absolut
220 / / 22.11.2002
Цитата:
Originally posted by GIZMO
Получается - TickStyle=tsNone?


Ну не в рисках тут совсем дело. Просто свойство ThumbLength меняет сразу и длину слайдера и ширину полоски. А надо всё это дело варьировать независимо. Вот здесь и кроется основная засада.

246
19 мая 2005 года
GIZMO
1.8K / / 30.07.2004
Цитата:
Originally posted by Absolut
Ну не в рисках тут совсем дело. Просто свойство ThumbLength меняет сразу и длину слайдера и ширину полоски. А надо всё это дело варьировать независимо. Вот здесь и кроется основная засада.


Ну тогда:

Код:
//in hpp
class TForm1 : public TForm
{
__published:    // IDE-managed Components
    TTrackBar *TrackBar1;
private:    // User declarations
    void __fastcall WMNotify(
    TMessage& Msg);
public:     // User declarations
    __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)
{
  LPNMHDR pnmh = reinterpret_cast<LPNMHDR>(Msg.LParam);

  if (pnmh->code == NM_CUSTOMDRAW &&
      pnmh->hwndFrom == TrackBar1->Handle) {
      LPNMCUSTOMDRAW pDraw = reinterpret_cast<LPNMCUSTOMDRAW>(Msg.LParam);
      //ПОЕХАЛИ
      ...
  }
   TForm::Dispatch(&Msg);
}
376
19 мая 2005 года
Absolut
220 / / 22.11.2002
Так-с ... чего-то я не понял, куда поехали-то ? Ручками рисовать ? Ну на такие жертвы я идти не готов.
246
19 мая 2005 года
GIZMO
1.8K / / 30.07.2004
Цитата:
Originally posted by Absolut
Так-с ... чего-то я не понял, куда поехали-то ? Ручками рисовать ? Ну на такие жертвы я идти не готов.


Хозяин-барин. А вообще-то зря очень шорошая тренировка.

376
19 мая 2005 года
Absolut
220 / / 22.11.2002
Цитата:
Originally posted by GIZMO
Хозяин-барин. А вообще-то зря очень шорошая тренировка.


На тренировки сейчас нет времени, к сожалению. На досуге конечно же попробую. Но сейчас хотелось бы малой кровью добиться желаемого эффекта. Странно, конечно, что вроде как стандартный виндовый элемент, а получить его не так-то просто. ;(

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