Developer(BCC5.5)にて、C++でWin32アプリケーションプログラムを作っています。メインのウインドウと別に、一つのモードレス・ダイアログを持っているプロジェクトなのですがそのモードレス・ダイアログ上では「ダブルクリック」の検出を止めたいと思い、ダイアログ・コールバックプロシージャ内のInitDialogイベントで下のように書きました。ここでこう書いてしまうと以降メインのウインドウでもダブルクリックが効かなくなるようなのです。この動作を見る限り、モードレスダイアログはメインのウインドウと「ウインドウクラス」を共用(?)しているのでしょうか。ダイアログはダイアログで別にウインドウクラスを作り、それを適用させなければならないのなとも思うのですが、その方法が。Form)で作っていてクラスをどのように適用出来るのかがまだ分からず。8年前メインウィンドウで効かなくなるのですか?メインウィンドウは自分でRegisterWindowClassしたウィンドウクラスをセットしているのですよね。あればモードレスダイアログとは関係ないはずなんですけどね。~CS_DBLCLKSだとどうなりますか?ウィンドウクラスは、ウィンドウ共通の動作のひな形なので同じウィンドウクラスを元に作成されたウィンドウは同じ動作になります。標準ダイアログや標準コントロールのたぐいはウィンドウズが用意したウィンドウクラスから作られるウィンドウです。自分で作成したウィンドウクラス以外を変更するとシステムにどんな影響が出るか分からないのでやめた方が良いですよ。メインウィンドウがおかしくなるのはそのせいかもしれません。ISLeさん、返信ありがとうございます。~CS_DBLCLKS>だとどうなりますか?こちらでも早速やってみたんですが、どうもダブルクリックは除外できないようです。"CS_DBLCLKS"は"CS_"(クラススタイル)のものらしく、SetWindowLongでセット出来る"GWL_STYLE"(ウインドウスタイル)、とは異なるもののようです。読み捨てるってのは無しですか?出来れば、カチカチと早くクリックした時、それを捨てることなくシングルクリック2回として拾いたいところなんですが。現実的にはそうした方が良いのかもしれません。>自分で作成したウィンドウクラス以外を変更するとシステムにどんな影響が出るか分>からないのでやめた方が良いですよ。>メインウィンドウがおかしくなるのはそのせいかもしれません。するとこれはやめた方が良いのかもしれません。メインのウインドウだけなら自分で定義したウインドウクラスを直せばよいだけなので簡単だったのですか、今回はダイアログだけ変えたいということだったのでかなりつまづいてしまいました。これは手を出さない方がいいですね。お二方とも、レスありがとうございました。何かの時には、よろしくお願いします。読み捨てるのではなくWM_LBUTTONDBLCLKだったらWM_LBUTTONDOWNに(左ボタンの場合)差し替えてDefDlgProcに投げたらどうなりますかね。自前のダイアログプロシージャ内の処理だったらWM_LBUTTONDOWNとWM_LBUTTONDBLCLKを区別しなければダブルクリックをシングルクリックとして処理できますよね。何かダイアログの標準的な挙動を変えたいわけですよね。8年前リソーススクリプトでダイアログに自作のウィンドウクラスを適用する方法。win89.htmlそれで、システム定義のダイアログボックスのウィンドウクラスの情報を複製,取得して、別のウィンドウクラスとして定義しなおすのが次のコード。//文字列はjacobyさんが自由に設定してください。RegisterClassEx(&my_dlgclass);こうしてやれば、たぶん大丈夫だと思います。ミクプラは自由にリンクできます。