Bonjour
Je cherche une solution pour coupler un TUpDown et TTrackBar
en c++ builder.
Le but est d'apporter un confort supplémentaire de saisie pour les utilisateurs
de mes programmes lorsqu'ils doivent sélectionner une valeur parmi
un échelle assez large (avec TUpDown ça peut être mortel). Et je ne veux pas autoriser la saisie dans le TEdit
associé au TUpDown
Je sais faire au cas par cas mais c'est lourd à gérer !
Visuellement ça donne : un TEdit, un TUpDown, un bouton style DropDown à côté de ceux du TUpDown, un trackbar qui apparaît ou disparaît selon les besoins.
et le code:
//Un bouton genre Dropdown list pour faire apparaître la trackbar
void __fastcall TFormMonitoring::BtnTrackBarMouseUp(TObject *Sender,
TMouseButton Button, TShiftState Shift, int X, int Y)
{
if (TrackBar1->Visible)
return;
else
{
TrackBar1->Visible = true;
TrackBar1->Position = UpDownPause->Position;
TrackBar1->Min = UpDownPause->Min;
TrackBar1->Max = UpDownPause->Max;
TrackBar1->SetFocus();
}
}
//Le spinbutton...
void __fastcall TFormEssai::UpDown1Changing(TObject *Sender,
bool &AllowChange)
{
TrackBar1->Position = ((TUpDown *)Sender)->Position;
}
//---------------------------------------------------------------------------
//Le slider
void __fastcall TFormEssai::TrackBar1Change(TObject *Sender)
{
UpDown1->Position = TrackBar1->Position;
}
//---------------------------------------------------------------------------
//Cacher lorsqu'on le quitte
void __fastcall TFormEssai::TrackBar1Exit(TObject *Sender)
{
TrackBar1->Visible = false;
}
Le mieux je crois est de créer un composant...mais je ne sais pas faire hélas
Si quelqu'un connait un tutos clair pour créer un composant VCL ou je ne sais quoi
que je puisse utiliser comme ceux fournis en standard...
Merci