目次に戻る
一覧ページに戻る
CPRadioButton::Repaint
2001/12/25 update.
ラジオボタンの再描画を促します。

書式

  void Repaint();

解説


ラジオボタンの再描画を促します。
イベントなどで動的にラジオボタンの内容が変化した、という場合には「Repaint」を呼び出して再描画を促す必要があります。





ウィンドウ(ダイアログ)を生成して、その中にグループを配置し、さらにグループ内にラジオボタンを2つ配置します。
グループの上にチェックボックスを配置し、チェックボックスがクリックされたらラジオボタンを再描画しています。

CPWindow win;
CPGroup group;
CPCHeckBox chkbox;
CPRadioButton rbut1,rbut2;

//チェックボックスのイベントを受け取る
static void OnCheck(CPCheckBox *lpChk)
{
    //再描画を促す
    rbut1.Repaint();
}

void main()
{
    //ダイアログを生成する
    win.Clear();
    win.CreateNewDialog("TestDialog",120,120,300,200);

    //チェックボックスの位置・サイズを指定
    chkbox.SetBounds(10,10,120,14);

    //チェックボックスの文字列を指定
    chkbox.SetText("CheckBox");

    //チェックボックスのチェック
    chkbox.SetSelected(CP_TRUE);

    //チェックボックスのコールバック関数設定
    chkbox.AttachSelectEvent(OnCheck);

    //チェックボックスをCPWindowに結びつける
    win.Add(&chkbox);


    //グループを生成する
    group.SetBounds(10,30,240,160);
    group.SetText("Group");

    //グループをCPWindowに結びつける
    win.Add(&group);

    //ラジオボタン1の位置・サイズを指定
    rbut1.SetBounds(10,30,120,16);

    //ラジオボタン1の文字列を指定
    rbut1.SetText("RadioButton1");

    //ラジオボタン1をCPGroupに結びつける
    group.Add(&rbut1);

    //ラジオボタン2の位置・サイズを指定
    rbut2.SetBounds(10,50,120,16);

    //ラジオボタン2の文字列を指定
    rbut2.SetText("RadioButton2");

    //ラジオボタン2をCPGroupに結びつける
    group.Add(&rbut2);

    //ダイアログの表示・イベントループの開始
    win.DoModal();
}

この例では、chkboxで示されるチェックボックスにコールバック関数「OnCheck」が指定されています。
これにより、chkboxのチェックボックスにアクションがあった場合は、staticで定義された関数「OnCheck」が呼ばれることになります。
この後に「rbut1.Repaint()」を呼び出してラジオボタンの再描画を行っています。


ビルド時に必要なファイル


ライブラリ :CPartsLib.lib (Macintoshの場合は、CPartsCW.a)
ヘッダ :CPRadioButton.h


関連リンク


CPRadioButtonクラス