• ベストアンサー

APIで作成したコモンコントロールのイベント取得方法

こんにちは。 http://www.mitene.or.jp/~sugisita/vb6_cmctl.html にある、ツリービューコントロールの カテゴリーのサンプルを参考にして APIで、コントロールを使えるように苦戦しております。 表示はできるのですが、表示させたコントロールのイベント(click等)を取得する方法が分かりません。 ご存知の方がいらっしゃいましたら、よろしくお願いします。

  • hige7
  • お礼率22% (6/27)

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

コントロールを作成したフォームをサブクラス化して、コントロールから送られてくるメッセージを処理してください。 Cのプログラムのように。

関連するQ&A

  • .Net ユーザーコントロールのイベント

    質問させていただきます。 環境はVB.NET2003 WindowsXPです。 あるユーザーコントロール(Form)にボタンが用意されており、そのユーザーコントロールを別のフォームAに貼り付けたとします。 この時、Aのコード内でユーザーコントロール上のボタンのClickイベントを取得する方法がございましたら、回答をよろしくお願いします。

  • ツリービューのノードを閉じた時のイベント

    VB6でツリービューを利用したプログラムを組んでいます。ツリービューのイベント処理において、ツリービューのノードを展開した時には、Expandイベントで取得することが可能だと思うのですが、ノードを閉じたときのイベントは、取得することができるのでしょうか?

  • BeforeExpandのイベント作成方法

    いつもお世話になっています。 C#をはじめて3日目の初心者です。 C#でツリーコントロールをしようしてディレクトリツリーを作成しています。 ノードを展開しようとしているときに発生するイベントが「BeforeExpand」であることまで調べられたんですが、「TreeView」イベントから「BeforeExpand」を作成する方法がわかりません。。。 フォームをダブルクリックするとForm1_Loadのコードが自動で作成されますが、「TreeView」に対して何かをすればできると思っています。。。 ご存知の方よろしくお願いします。

  • ディレクトリツリービューを有するWin32SDKアプリケーション

    左にエクスプローラ風のフォルダツリービューのペインを有し、ファイルをクリックすると右ペインで表示編集などの処理をする、ごく一般的な2ペインアプリケーションをMSVC++6.0 Win32SDKで作成すべく、インターネットで検索しましたが、MFCやVBの例はあるもののWin32SDKのサンプルコードを見つけることが出来ませんでした。 コモンコントロールでエクスプローラ風のフォルダツリービューのコードを自作するとなると極端な労力を要します。 そこで"Win32SDKプログラム"のフォルダツリービューの適当なサンプルコードの所在をご存知でしたらよろしくお願いします。

  • OCX内のコントロール名の取得方法

    VB6で下記の記述で実行しようと思ったのですが OCX内のコントロール名を取得できませんでした。 Dim strBtnName as String Dim objBtnName as Object For Each objBtnName In me.controls if me.Name = strBtnName then objBtnName.Enable = True End If Next objBtnName コントロール名を取得できない時は 文字列をオブジェクト名へ変換してしたいと 思ってるのですが変換方法がわかりません。 もしそういうのAPIなどがあれば教えてください。よろしくお願いします。

  • Yahoo apiをJavascriptで作成

    Yahoo apiの以下のURLはPHPで作成されています。(サンプルコード集より) http://cgi.geocities.jp/ydevnet/sample/shopping/sample8/ContentMatc... このapiをJavascriptで作成することは可能でしょうか? 可能であれば、以下のURLのmooraku.js を改良して作成してみたいと思っています。 http://common1.biz/material/javascript/21/ もし可能であれば、 1、画像 2、価格 3、商品名 4、商品説明 の4要素をJavascriptで表示させるには、どうすればよいのでしょうか? 具体的に改良方法をご教示いただければと思います。 大変申し訳ございませんが、お詳しい方、よろしくお願い致します。 m(_ _)m

  • VBでインストール済みアプリケーション情報を取得する方法

    VBにてPCにインストール済みアプリケーション(「コントロールパネル」ー「プログラムの追加と削除」に表示されるアプリケーション)の情報を取得死体のですが、これら情報はどのようにして取得できるのでしょうか? レジストリキーの検索やWMIなど探してみたのですが、うまい解決策が見つかりません。 API関数があるのでしょうか?

  • フォーム上の任意のコントロール上でのイベントをまとめてハンドリングする方法

    .NETにおいて、フォーム上に配置されたコントロールで発生したイベントを、各コントロールごとではなくて、まとめてハンドルする方法はないでしょうか。 例えば次のようなフォームがあります。 (Button1, Button2, Button3は、フォームに配置されたボタンとします) Public Class MyForm   Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button3.Click   End Sub End Class ボタンが3つ程度の場合はこれで良いと思うのですが、例えば(極端に言えば)ボタンが100個ある場合、 Handles Button1.Click, Button2.Click, (途中省略.....) Button100.Click と書くしかないのでしょうか。 後で対象コントロールが増えたり減ったりした場合に間違いが起こりそうなので、このような書き方は避けたいです。 フォーム上のどのコントロールでも構わないからとにかくクリックイベントが発生したことを知るための方法はないでしょうか。 例えば次のようなかんじでハンドリングできないでしょうか。 Private Sub All_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles フォーム上の任意のコントロールでのClickイベント End Sub (環境はVB.NET2005です)

  • APIで検索結果を1件だけ取得する方法を教えてください

    日曜プログラマーのため、プログラミング知識が乏しいのですが質問させてください。 「Simple API」というサイトのWikipedia APIのサービスを利用しようと考えているのですが、 サイト上で紹介されているPHPサンプルですと、キーワードによっては複数件の結果を取得してしまいます。 --------以下サンプル------- <?php // キーワード指定 $keyword = "東京"; // APIのURL $url = "http://wikipedia.simpleapi.net/api?keyword=".urlencode($keyword)."&output=php"; // データを取得 $data = file_get_contents($url) ; // PHPシリアライズパーサーを利用して解析し、配列に入れる $array = unserialize($data); // 配列をforeachで表示するデモ print "<H1>Wikipedia情報</H1>"; foreach ($array as $key => $value) { print "<a href=\"".$value[url]."\"><strong>".$value[title]."</strong></a>\n<br/>". $value[body] ."<hr/>\n\n"; } ?> ------------------ 私のやりたいこととしては、検索キーワードに対して1件目の結果のみ表示させたいのですが、うまいやり方がわからず困っています。 (データ取得自体は1件のみでも複数件でも構わないのですが、表示は1件目のみさせたいです) どなたか1件目の結果のみ表示されるサンプルコードをご教授願えませんでしょうか。 よろしくお願いいたします。 【SimpleAPI vol.3 - Wikipedia API】 http://wikipedia.simpleapi.net/

    • ベストアンサー
    • PHP
  • 今発生しているイベントのコントロール名を取得

    エクセルです 例えば、シートにコマンドボタンを一つ設置して、クリックイベントで Private Sub CommandButton1_Click() MsgBox "CommandButton1が押されました" End Sub こうしたら、コマンドボタン1を押した時に、 "CommandButton1が押されました"が表示されますが、 CommandButton1の部分を変数みたいなのにすることはできますか? MsgBox Me.Name & "が押されました" だとシート名が取得されるし MsgBox Me.Control.Name & "が押されました" や MsgBox Me.ActionControl.Name & "が押されました" だとエラーになります。

専門家に質問してみよう