- ベストアンサー
ActiveXコントロールにオブジェクトの追加?
VB6SP6です。 ActiveXコントロールにはプロパティ・メソッド・イベントが設定できることがわかりました。 オブジェクトの追加ってできますか? 使用する側から 通常は「ActiveX名.メソッド」とするところを 「ActiveX名.オブジェクト名.メソッド」というようにメソッドを呼び出したいのです。 へんちくりんな質問でしたらすみません。 どなたかわかる方いらっしゃいましたらよろしくお願いいたします!
- kogeru_006
- お礼率83% (10/12)
- Visual Basic
- 回答数2
- ありがとう数2
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
UserControlにクラスのインスタンスを返すプロパティを実装するだけです。 -- UserControl1 --- Private m_object1 As New Class1 Public Property Get Object1() As Class1 Set Object1 = m_object1 End Property -- Class1 -- Public Sub MyMethod() '処理 End Sub
その他の回答 (1)
- todo36
- ベストアンサー率58% (728/1234)
Class1のプロパティ Instancing
お礼
todo36さん。回答ありがとうございます。 Class1のプロパティ? Instancing?? なんのこっちゃな感じでしたが検索してみたらヒットしました! (知識が少なくてすみません。) 使用できる範囲があるんですね。 ↓こちらを参考にさせてもらいました。 http://homepage2.nifty.com/nihon-nouen/programming-classinstancing.htm そして Class1のInstancingプロパティをGlobalMultiUseに したところ、エラーも出ずに流れました。 本当にありがとうございました!
関連するQ&A
- ActiveX名.オブジェクト名.GETメソッド?
お世話になります。 VB6SP6です。 ActiveXコントロールにはプロパティ・メソッド・イベントが設定できることがわかりました。 また、クラスを使用することで「オブジェクトの追加」が出来ることをこちらで教えていただきました。 そこで質問です。 メソッド名に「Get」を使用することは出来ますか? ActiveX名.オブジェクト名.GETという風に使用したいのですが。。。 ヒントなどでもいただければ助かります! よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- ActiveXコントロールでフォームを参照するには?
VB6SP5を使用してActiveXコントロールを勉強中です。 ActiveXコントロールを作成(OCX化)して、そのコントロールを別のプロジェクトのフォームで使用しようと思っています。 このコントロールの機能は、使用するフォーム上の「ラベル」や「テキストBOX」の情報(Caption、サイズ、位置、色 etc...)を取得して、いろいろと処理を行いたいのですが、取得方法がわかりません。 一応、次のようにコントロールのメソッドの引数でフォームを受け取ろうとしたのですが、下記のコンパイルエラーが出てダメでした。 Public Sub ABC( ByRef frmMain As Form ) : End Sub --- コンパイルエラー!! ------------------------------------------- "プライベート オブジェクトモジュールを、 パブリック オブジェクトモジュール内で、 パブリック プロシージャの引数または戻り値、 パブリック データメンバ、またはパブリックのユーザー定義型のフィールドとして、 使用することはできません。" ------------------------------------------------------------------ ところが、"As Form" を "As Object" にすると、上手くいきました。 Public Sub ABC( ByRef frmMain As Object ) : End Sub この違いは何なんでしょうか? この使い方は正しいのでしょうか? もし、別の方法があれば、教えて下さい。
- ベストアンサー
- Visual Basic
- ActiveXコントロールを作成してから登録の削除は?
VBでActiveXコントロールを初めて作成したのですが、 間違えて同じ名前のActiveXコントロール作成してしまいました。 で、コンポーネントでのActiveXコントロール追加に同じ名前のコントロール が2登録されてしまいました。 この登録されたコントロールを2つとも削除したいのですが。 拡張子「*.ocx」のファイルを削除しても、 コンポーネントのコントロールに登録したActiveXコントロール名が残ったままです。 どうすれば、この登録を削除できるのでしょうか? よろしくお願いします。m(__)m 補足: 標準.EXEファイルなどでVBを立ち上げて、 ツールボックスの上で右クリック→コンポーネント→コントロールタブ で、表示されるコントロール名に同じコントロール名が登録されている状態です。 この登録名を両方とも削除したいのですが。
- ベストアンサー
- Visual Basic
- ActiveX コントロールの使用個数の確認
教えて下さい。 各コントロール配列がフォーム上ですと、[コントロール名.UBound]メソッドで最大要素数が確認できますよね。 (もしくは、Indexプロパティで要素Noを見れる。) それと同じ事をAcitiveXコントロール内で自コントロールが有るフォームで何個使用されているか知りたいのですが、何か方法はありませんか? 例を上げます。 ActiveXコントロール名称:Test フォーム名称:frmMain このフォームにTest(0),Test(1),Test(2)を3個使用した場合、 (もしくは、Test1,Test2,Test3と3個使用した場合) ActiveXコントロール内で何個使用されているかを知りたい。 と言うわけですが。。。
- 締切済み
- Visual Basic
- ActiveX コントロール
Vista IE7でActiveX コントロールのインストールしようとすと 「セキュリティの設定により、Web サイトではコンピュータにインストールされている ActiveX コントロールの使用は許可されません。そのため、ページは正確に表示されない可能性があります。オプションを表示するには、ここをクリックしてください。」とでてしまい ActiveXを使用しているHPが表示できません。 また、ファイルのダウンロードもできません。 インターネットオプションのセキュリティのカスタマイズで 署名されたActiveXコントロールのダウンロードなど有効にしても UACを無効にしても 「コンピュータが危険にさらされています」とでるだけで ActiveX コントロールのインストールができません。 他にセキュリテイの設定方法があるのでしょうか
- 締切済み
- Windows Vista
- ActiveXコントロールがインストールされません・・・。
環境はウィンドウズXP home edition を使用しております。 それで、最近SP2を導入したのですが、それ以来WEB上でのActiveXコントロールがまったくインストールされません。以前にインストールされていたコントロールは普通に使えます。 症状として、ActiveXコントロールを使用したサイトに行くと、始めに「このサイトはActiveXコントロールが必要・・・」の旨が表示(青い色の盾?の情報バーが出てくる)されます。これはSP2の標準の仕様だと思いますが、そこをクリックして、インストールを選択すると、今度は「セキュリティの設定により、WEBサイトによる、このコンピュータにインストールされているActiveXコントロールの実行は許可されません・・・」が表示(黄色い盾?の情報バー)されます。 IE6.0のセキュリティの設定をすべて有効にしても、同様の表示が出ます。 稚拙な文章でわかりにくいとは思いますが、どうにかご指摘いただいて、助言していただけたらと思います。どうぞよろしくお願いします。
- 締切済み
- Windows XP
- ActiveXコントロールがうまくいかない
似たような症状がでている方がいたようなので、参考にしてやってみたのですが…うまくいきません。私の状況は次のとおりです。 もともとはIE5.5が入ってたのですがこれは消せないようだったので、IE6.0SP1をMicrosoftのHPからダウンロードし、Q837009とQ891781だけ入れてみました(問題のQ912812は入れず)。バージョン情報にもアプリケーションの追加と削除にもQ912812は表示されてないので、入っていないと思うのですが…やはりActiveXコントロールがうまくいきません。トレンドマイクロやシマンテックのオンラインスキャン(ActiveXコントロールを使うもの)を試すと、「×」になったり「実行できません」となります。 IE6.0SP1を元から入れたので解決するかと思ったのですが…何か解決方法ありましたら教えてください。 参考までにWindowsMe4.90.3000です。
- ベストアンサー
- Windows Me
- 未署名のActiveXコントロール…
Shockwave Flash objectを埋め込んだhtmlファイルを作成しています。 (そのobjectを作成したのは自分ではなく同僚なのですが、HPの管理者としてそのファイルを埋め込んでアップロードしたいと思っています) しかし、タグで埋め込んで、ファイルを表示させようとすると 「現在のセキュリティ設定ではこのページのActiveXコントロールは実行できません。そのため、このページは正確に表示されない可能性があります」 と言うメッセージが出てきました。 [ツール]→[インターネットオプション]でセキュリティのところをみてみると、 セキュリティの状態が[中低]以上だと、「未署名のActiveXコントロールはダウンロードされません」と言う表記があったので、セキュリティレベルを下げれば問題なく表示されるのだとは思いますが、出来れば違う解決方法を捜そうと思っています。 「未署名じゃないActiveXコントロール」はきっと今のセキュリティの状態でも表示されるのではないかと思うのですが、ActiveXコントロールを未署名ではなくするには、どうすればいいのでしょうか? オブジェクトを作成する時点で必要なことがあればその作成者に、その旨を伝えた上で作り直してもらおうと思っているのですが、、、
- 締切済み
- ネットワーク
- ActiveXコントロールについて
インターネットオプションのオブジェクトの表示を 久しぶりに見たら以前は無かったものがあったんですが大丈夫でしょうか? プログラムファイルの名前?は数字で状態の所は不明 作成日時と最終アクセス日はなしとなっていて プロパティを見ると種類ActiveXコントロール・依存関係は一個のファイル記載、0個のjavaパッケージ、 バージョンの会社名などは不明になっています。 コードベースにはmicrosoftと入っているんですがなんだか怪しく思えてしまって・・・ちなみに危ないサイトとかには行ってません。 OSはXPです。 よろしくお願いします。
- ベストアンサー
- ネットワーク
- ActiveX コントロールについて
パソコンを最近入手しまして質問なのですが、オンラインゲームをプレイする際ActiveXコントロールを『情報バー』をクリックして、インストールしてくださいと表示がでます。 その情報バーが画面にでてこなくて困っています。 私もいろいろ調べてみましたが自分では解決できないと思い投稿しました。 回答をお願いします! セキュリティ-の設定は済んでいます。 ツール→インターネットオプション→セキュリティ(レベルのカスタマイズ)→ ・ActiveXコントロールとプラグインの実行(有効にする) ・スクリプトを実行しても安全だとマークされているActiveXコントロールのスクリプトの実行(有効にする) ・署名済み ActiveXコントロールのダウンロード(有効にする) に設定しています。
- 締切済み
- ネットトラブル
お礼
todo36さん!ありがとうございます! 試したところ使用側から 「ActiveX名.Object1.MyMethod」として記述できました! (これってきっと基本的なことなんですよね。。) んが、実行したところ 「実行時430エラー クラスはオートメーションまたは予測したインターフェイスをサポートしていません」 のメッセージが出てしまい、流れてくれません。 自分でも調べてみますが、 もしよろしければ対処法がわかりましたらお教え願えないでしょうか? ちなみに処理はメソッドにMsgBoxを追加しただけです。 よろしくお願いいたします。 -- Class1 -- Public Sub MyMethod() '処理 MsgBox "MyMethod!" End Sub