質問

Tabpage 'Tab1'に追加したトラックバーコントロールが次のとおりです。

               TrackBar[] tbs = new TrackBar[nooftbsneeded];


               // Add TrackBars
                TrackBar tbx = new TrackBar();
                tbx.Location = new Point(28, 150 + (i * 200));
                tbx.Size = new Size(686, 45);
                tbx.Minimum = 0;
                tbx.Maximum = 16;
                tbx.SmallChange = 1;
                tbx.LargeChange = 2;
                tbx.Value = 8;

                // create events (using a lambda expression) for each trackbar to change values.
                tbx.Scroll += (o, a) =>
                {
                    // Update text values
                    if (tbx.Value == 0)
                    {
                        label3x.Text = "Extremely Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 1)
                    {
                        label3x.Text = "Extremely Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 2)
                    {
                        label3x.Text = "Very Strongly Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 3)
                    {
                        label3x.Text = "Very Strongly Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 4)
                    {
                        label3x.Text = "Strongly Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 5)
                    {
                        label3x.Text = "Strongly Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 6)
                    {
                        label3x.Text = "Moderately Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 7)
                    {
                        label3x.Text = "Moderately Better";
                        label4x.Text = "";
                    }
                    if (tbx.Value == 8)
                    {
                        label3x.Text = "Equal";
                        label4x.Text = "Equal";
                    }
                    if (tbx.Value == 9)
                    {
                        label3x.Text = "";
                        label4x.Text = "Moderately Better";
                    }
                    if (tbx.Value == 10)
                    {
                        label3x.Text = "";
                        label4x.Text = "Moderately Better";
                    }
                    if (tbx.Value == 11)
                    {
                        label3x.Text = "";
                        label4x.Text = "Strongly Better";
                    }
                    if (tbx.Value == 12)
                    {
                        label3x.Text = "";
                        label4x.Text = "Strongly Better";
                    }
                    if (tbx.Value == 13)
                    {
                        label3x.Text = "";
                        label4x.Text = "Very Strongly Better";
                    }
                    if (tbx.Value == 14)
                    {
                        label3x.Text = "";
                        label4x.Text = "Very Strongly Better";
                    }
                    if (tbx.Value == 15)
                    {
                        label3x.Text = "";
                        label4x.Text = "Extremely Better";
                    }
                    if (tbx.Value == 16)
                    {
                        label3x.Text = "";
                        label4x.Text = "Extremely Better";
                    }


                };

                tbs[i] = tbx;
                tab1.Controls.Add(tbs[i]);

トラックバーの個々の値を取得するにはどうすればよいですか?

私は考えられるコールのすべての組み合わせを試しました。私は、個別のトラックバーコントロールを参照する方法がわからないだけです。

役に立ちましたか?

解決

これがクラスレベルで宣言されていることを確認してください。

TrackBar[] tbs;

次に、あなたの方法で、それを初期化するだけです(それを再特定せずに):

tbs = new TrackBar[nooftbsneeded];
// ... Create track bars

その時点で、後で次を介して値を読むことができます。

var value = tbs[3].Value;

他のヒント

foreach(var control in tab1.Controls){

    if(control.GetType() == typeof(TrackBar)){
       object value = ((TrackBar)control).Value; 
    }
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top