|
|
||||
Tips > |
|||||
TrackBar の Position から設定値を取得する |
更新 : 2009/05/06 |
||||
|
|
||
解説: TrackBar コンポーネントは、スライダ(つまみ)を移動させて目盛りから値を選んだりする時に使います。 マウスでのドラッグやバー上でマウスをクリックしてスライダを移動することができます。キーボードでのスライダ移動も可能で、アプリケーションの様々な設定で値を変更する部分などで使われます。 使用例: 以下は、TrackBar のスライダを移動させることで、あらかじめ用意しておいた値から任意の値を取得しています。 準備としては、 TrackBar コンポーネントを配置するだけです。 あとはコードで処理していきます。 OnCreate で Height や Max 等のプロパティを設定しています。あまり必要ないかもしれませんが TrackBar を少しアレンジしています。 アプリを起動して、スライダの目盛りをクリックで移動してみてください。 OnChange に記述したコードによってスライダのポジションに応じた値が Form の Caption に表示されます。 //------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { // TrackBar1 の設定 TrackBar1->Height = 20; TrackBar1->Max = 2; TrackBar1->PageSize = 1; TrackBar1->SelEnd = 2; TrackBar1->TickMarks = tmTopLeft; } //------------------------------------------------------------------- void __fastcall TForm1::TrackBar1Change(TObject *Sender) { // enum キーワードを使い列挙データ型を定義 enum TPositionLevel { plFirst, plSecond, plThird }; // 整数値を enum 型に代入すると警告が出るのでキャストしておく TPositionLevel FLevel = (TPositionLevel)TrackBar1->Position; switch (FLevel){ case 0: Caption = "Left"; break; case 1: Caption = "Center"; break; case 2: Caption = "Right"; break; } } //------------------------------------------------------------------- |