ActiveXコントロールのhWndの取得方法について

[戻る]
Blink182 2004/04/07(水) 21:39:00
はじめまして,ActiveXコントロールについてご質問したいことがあります.

現在,VC++6.0のMFC ActiveX ControlWizardを使ってActiveXコントロールを作成してい
るのですが,コントロールクラス内でm_hWndプロパティ, GetHwnd()メソッドを参照して
も,両方とも値が0となっています.コントロールのhWndを取得する場合どのような処理
を行えばよいのでしょうか?

よろしくお願いします.

... 2004/04/08(木) 14:41:08
ウィザードでActiveXコントロールを新規作成して
メソッドを適当に追加し、その中でGetHwnd()を
呼び出してみましたがうまく取得できているようです。m_hWndも同じ値です。
(0にはなりませんでした。)

#試す方法が違っていますか?

Blink182 2004/04/08(木) 15:20:01
ActiveX Control Wizardで”実行時に不可視”をチェックすると取得できないようです
(チェックしない場合には取得できることは確認できました).

実行時に非表示のコントロール(VBのTimerのような感じの物)を作りたいのですが,その
場合にhWndプロパティを取得したい場合はどうすればよろしいのでしょうか?

最初の説明が不足していたため,再度質問しなおす形となりました.お手数をかけますが
ご存知の方よろしくお願いします.

... 2004/04/08(木) 17:14:58
>ActiveX Control Wizardで”実行時に不可視”をチェックすると
>取得できないようです
そういうことでしたか。

実行時に見えなければOKということであれば
「実行時に不可視」のチェックははずしてしまって(表示状態にして)
ShowWindow(SW_HIDE);
などで表示状態を制御してしまってはいかがでしょうか?

#逃げっぽいですが。

Blink182 2004/04/11(日) 22:05:21
[[解決]]
ありがとうございました.なんとか,思い通り動かすことができました.

また,何かあったらよろしくお願いします.

古いスレッドには追加発言できません。