2

リソースマネージャーのダイアログレイアウトに8つのラジオボタンを追加しましたが、4つのボタンからなる2つのグループに分割するのに問題があります。制御変数を追加しようとしましたが、ウィザードのドロップダウンメニューにCButtonのオプションが表示されません。この目標を達成するための最も簡単な方法は何でしょうか?

4

2 に答える 2

7
  1. 各グループの最初のコントロールに「グループ」および「タブストップ」属性が設定されていることを確認してください。
  2. 各グループの最後のラジオボタンに続くコントロールに「グループ」属性が設定されていることを確認してください。
  3. 各グループのすべてのラジオボタンIDが連続した整数であることを確認してください。
  4. グループごとに整数のメンバー変数を作成します
  5. ダイアログのDoDataExchangeメソッドで、整数変数をグループの最初のIDにリンクする各グループのDDX_Radioステートメントを追加します。

整数変数は、UpdateData(true)が呼び出されるたびにラジオボタンから設定され(デフォルトのOnOk()ハンドラーによって自動的に呼び出されます)、ラジオボタンはUpdateData(false)を呼び出すことによって変数から設定できます(デフォルトでは自動的に発生します)。 OnInitDialogの処理)

于 2009-06-11T00:58:30.297 に答える
0

この問題はMFCの問題ではなく、WIN32ラジオボタンの問題です。

グループを作成するときは、タブの順序(作成順序)が重要です。最初のグループ、次に2番目のグループの順に作成する必要があります。各グループの最初のラジオボタンコントロールでは、「グループ」スタイルを選択する必要があります。

Visual Studioダイアログエディターでラジオボタンを作成してテストダイアログを実行できるはずです。ラジオグループは、コードがまったくなくても2つのグループ内で正常に機能するはずです。そうでない場合は、何か間違ったことをしています。

私はあなたを助けるかもしれないグーグルを使ってこれを見つけました。

于 2009-06-11T01:01:22.303 に答える