





Intel OpenCV window_w32.cpp
トラックバーも、リストというデータ構造を使っている。
CvTrackbar構造体には、トラックバーの名前や、親ウィンドウのウィンドウハンドルなどが含まれる。
また、各ウィンドウが次ののCvTrackbarのアドレスを保持するため、ウィンドウ名からトラックバーを取得したりすることが可能となっている。
notifyにはcvCreateTrackbarによって、cvTrackbarCallbackがセットされる。
→ データ構造/リスト
→ CvWindow
→ cvCreateTrackbar
typedef struct CvTrackbar
{
int signature; // cvCreateTrackbarで作成されたかどうか
HWND hwnd; // ウィンドウハンドル(スライダー部)
char* name; // ウィンドウ名
CvTrackbar* next; // 次のトラックバーのアドレス
CvWindow* parent; // 親ウィンドウ
HWND buddy; // ウィンドウハンドル(文字部)
int* data; // スライダー位置
int pos; // スライダー位置
int maxval; // トラックバーの最大値
void (*notify)(int); // スライダー移動の検知の有無
int id; // 現在のボタンの数
}
CvTrackbar;