スライダーの動きを制限する方法
「トラック バー コントロールについて」で説明されているように、トラックバー範囲の一部を選択範囲としてオフに設定することができます。 選択範囲の 1 つの目的は、スライダーの動きを制限し、全範囲の一部を制限対象外にすることです。
知っておくべきこと
テクノロジ
前提条件
- C/C++
- Windows ユーザー インターフェイス プログラミング
手順
スライダーの動きを制限する
次のコード例では、スライダーが選択範囲の外側に移動されるたびにスライダーの位置をリセットすることで、スライダーの動きを制限します。
case WM_HSCROLL:
{
HWND hTrackbar = GetDlgItem(hDlg, IDC_SLIDER1);
if (hTrackbar == (HWND)lParam)
{
int newPos = SendMessage(hTrackbar, TBM_GETPOS, 0, 0);
int selStart = SendMessage(hTrackbar, TBM_GETSELSTART, 0, 0);
int selEnd = SendMessage(hTrackbar, TBM_GETSELEND, 0, 0);
if (newPos > selEnd)
{
SendMessage(hTrackbar, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)selEnd);
}
else if (newPos < selStart)
{
SendMessage(hTrackbar, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)selStart);
}
}
break;
}
解説
このコード スニペットは、ダイアログ ボックスのウィンドウ プロシージャの一部です。
関連トピック