C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.54222 の関連記事表示

<< 0 >>
■54222  ATLでRAD化を実現するには?
□投稿者/ ささお -(2010/10/10(Sun) 12:04:50)

    分類:[C/C++] 

    こんにちは。
    よくデータコントロールなどコントロールを貼り付けると自動的に
    プロパティにフォーム上にあるデータコントロールの一覧を表示したり、
    データコントロールのプロパティ(フィールドの一覧など)を表示したりする
    コンポーネントがあります。

    ATLでActiveXコントロールを作成して、そのコントロールのプロパティの1つを
    他のコントロールのプロパティウィンドウに表示させたいのです。
    実行時は関連付けられたそのコントロールを制御したいのです。

    上記を ATL又はMFCで実現させるにはどのような手順を踏めば良いのでしょうか?
    (C#、VB.NET はサンプルがあるのですが、C++ はありません。(泣))
親記事 /過去ログ91より / 関連記事表示
削除チェック/

■54223  Re[1]: ATLでRAD化を実現するには?
□投稿者/ Azulean -(2010/10/10(Sun) 13:59:26)
    2010/10/10(Sun) 14:02:01 編集(投稿者)

    方法については調べられていませんが、ちょっと気になったことをお聞きします。

    No54222 (ささお さん) に返信
    > ATLでActiveXコントロールを作成して、そのコントロールのプロパティの1つを
    > 他のコントロールのプロパティウィンドウに表示させたいのです。
    > 実行時は関連付けられたそのコントロールを制御したいのです。

    どのような制御をするつもりでしょうか?
    ネイティブの C++ からマネージの Control クラスのメンバーにアクセスできるわけではありませんし、ウィンドウ(HWND)ベースで何かやりたいのかなとは思っていますが、どういったことをしたいのかが見えませんでした。

    (最終的にやりたいこと次第では、ネイティブ C++ だけでは無理という結論になる可能性もあります)


    あと、C# などでの実現方法が IExtenderProvider インターフェースだとすれば、あくまで Visual Studio がサポートしている手段に過ぎません。
    他の開発ツールで汎用的に使える方法かどうかは保障されないので留意してください。(サポートされているかもしれないし、サポートされていないかもしれない)
記事No.54222 のレス /過去ログ91より / 関連記事表示
削除チェック/

■54224  Re[2]: ATLでRAD化を実現するには?
□投稿者/ ささお -(2010/10/10(Sun) 14:40:24)
    Azulean 様
    早速の返答ありがとうございます、説明不足でした。
    具体的に示すと、、、

    ■やりたい事の詳細
    1.ATLで自作のActiveXコントロールを作成。
      ・プロパティブラウザで表示するプロパティの1つに、仮に「DataControl」という
       読書プロパティを作る。
      ・MSFlexGridをフォームにおいてプロパティブラウザで見た時に、「DataControl」
       プロパティが、表示されて欲しい。
      ※.上記2点が、IExtenderProvider及び関連するインターフェースの効用だと思います。
       この時、ActiveXコントロールに保持したい情報としては、関連付けられたMSFlexGridの
       リソースID(数値、又は「Name」プロパティで命名した名称(文字列)。

    2.実行時は、ActiveXコントロールのSetClientSiteハンドラのタイミングでフォーム上に乗っている
      コントロールを列挙して、(ocxの場合の列挙方法は知っています)、リソースIDで見つける。
      ・TypeLibライブラリで生成(ClassWizardの)したMSFlexGridのクラスに関連付けて、以後操作する。

    こんな感じです。
    一番知りたいのは、「1」の方法であります。

    宜しくお願い致します。
記事No.54222 のレス /過去ログ91より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -