[173] 題名:Re[172]:標準EXEからActiveXに変更 投稿者:近藤 投稿日:2006/04/23 21:30
オブジェクト指向を実現するためにクラスがある考えてください。オブジェクト指向の基本概念を理解していてクラスを、理解しているとなるのです。−−−−ActiveXは、カプセル化です。−−−−位置口が1つであるActiveX、プロパティなしでメソッドが1つのみを作ることは可能です。−−−−>この場合のクラスの中の関数って、私がお話していたフォーム>モジュールの中のイベントをクラスの中で関数化するということ>ではいけないのでしょうか?「フォームモジュールの中のイベントをクラスの中で関数化」って言ったに何?VBの場合、フォームは、モジュールよりクラス(オブジェクト)でしょう。だって、フォームに、プロパティやメソッドを追加できるでしょう?クラス階層は、どう考えているのでしょうか?−−−−2・3年前、作りかけて、途中で制作を中断しているhttp://www.kondo-net.gr.jp/softca/dtp/の、ソースを見てみますか?ActiveX DLLだけど。。。。掲示板投稿時のメールアドレスに、お送りしますが。。。。
[172] 題名:標準EXEからActiveXに変更 投稿者:なな 投稿日:2006/04/10 19:00
こんにちは。>いったい何がわかっていないのだろう?私が思っているのは、「クラスモジュールが主体になっていて、フォームモジュールからクラスを宣言して使う作りがActiveX」です。クラスモジュールが主体とは、クラスモジュールに関数などを書き込んでいるというものです。(これは、教えて頂いたサンプルを以前見ていて思いつきました)このやり方が間違っているのかどうか判らないため、今回投稿させて頂きました。私が上げたサンプルソースでは、・End・Form1.Show , Me・Form2.Show , Me・ADD_DATAあたりをクラスモジュールに書き込んで呼び出すように変更すれば可能かなと思っていました。すみません。間違っていたら、ご指摘下さい。よく判らないのですが、サンプルのようにクラスモジュールを一つ作ってプロジェクトをスタートアップに設定し、フォームモジュールからクラスの中の関数(?)を指定すれば上手くいくのでしょうか?この場合のクラスの中の関数って、私がお話していたフォームモジュールの中のイベントをクラスの中で関数化するということではいけないのでしょうか?すみません。私自身何が何だか解らなくなってきました。結局のところ、どのようにすれば良いのでしょうか?
[171] 題名:Re[170]:標準EXEからActiveXに変更 投稿者:近藤 投稿日:2006/04/09 20:32
[168]のソースだと、 http://www.kondo-net.gr.jp/softca/activexdll.htmhttp://www.kondo-net.gr.jp/softca/activexexe.htmに、なります。いったい何がわかっていないのだろう?
[170] 題名:標準EXEからActiveXに変更 投稿者:なな 投稿日:2006/04/07 09:14
こんにちは。>このサンプルソースは、>>メニュー画面も含めて標準EXEを沢山作って、メニュー画面とDDE>>通信をするような自作アプリを作成しました。>>ActiveXにする目的は、>>メニュー以外の標準EXEをActiveXにして、メニューから各ActiveX>>を呼び出すようにする>>というものです。>を、満足していませんね?DDE通信と云っても、メイン画面が終了するときにサブ画面が終了するようにしているだけの単純な機能な為とソース自体が膨大になる為省略しました。何の説明もなくコードを記述してしまい、申し訳ございませんでした。
[169] 題名:Re[168]:標準EXEからActiveXに変更 投稿者:近藤 投稿日:2006/04/06 09:07
このサンプルソースは、>メニュー画面も含めて標準EXEを沢山作って、メニュー画面とDDE>通信をするような自作アプリを作成しました。>ActiveXにする目的は、>メニュー以外の標準EXEをActiveXにして、メニューから各ActiveX>を呼び出すようにする>というものです。を、満足していませんね?
[168] 題名:標準EXEからActiveXに変更 投稿者:なな 投稿日:2006/04/03 14:41
こんにちは。折角教えて頂けるというのに、サンプルソースをどう作れば良いか悩んじゃってしまい、今日になってしまいました。(結局、すごく簡単なものになってしまいましたが...)サンプルソース(実際はDBにデータを追加しています)メニュー画面(フォームジュール)Option ExplicitPrivate Sub cmdEnd_Click() EndEnd SubPrivate Sub cmdForm1_Click() Form1.Show , MeEnd SubPrivate Sub cmdForm2_Click() Form2.Show , MeEnd Subサブ1(フォームモジュール)Option ExplicitPrivate strMainData As StringPrivate Function ADD_DATA(ByVal sData As String) As Boolean On Error GoTo Error_ADD_DATA ADD_DATA = False If Len(strMainData) = 0 Then strMainData = sData Else strMainData = strMainData & vbCrLf & sData End If ADD_DATA = True Exit Function Error_ADD_DATA: Call MsgBox(Err.Description) End FunctionPrivate Sub cmdAdd_Click() If ADD_DATA(Text1.Text) Then frmMenu.Label1 = strMainData End IfEnd SubPrivate Sub cmdClose_Click() Unload MeEnd SubPrivate Sub Form_Load() strMainData = frmMenu.Label1.CaptionEnd Subサブ2(フォームモジュール)Option ExplicitPrivate Sub cmdClose_Click() Unload MeEnd SubPrivate Sub cmdDelete_Click() Dim strTemp As String If DEL_DATA(strTemp) Then frmMenu.Label1.Caption = strTemp End IfEnd Sub標準モジュールOption ExplicitPublic Function DEL_DATA(ByRef sData As String) As Boolean On Error GoTo Error_DEL_DATA DEL_DATA = False sData = "" DEL_DATA = True Exit Function Error_DEL_DATA: Call MsgBox(Err.Description) End Function以上、宜しくお願いします。
[167] 題名:Re[166]:Re3:標準EXEからActiveXに変更 投稿者:近藤 投稿日:2006/03/27 22:38
サンプルコードを作成して頂けないでしょうか?現在の方法でメニュー、サブ1、サブ2の標準EXEこれを、サブ1をActiveX DLLに、サブ2をActiveX EXEに、変更してみますが。。。。
[166] 題名:Re3:標準EXEからActiveXに変更 投稿者:なな 投稿日:2006/03/27 16:23
こんにちは。>呼び出し側と呼び出される(ActiveX)側の区別をして、説明して頂けないと>内容がよくわからないですねぇ。今回初めてActiveXを作ります。通常の標準EXEは、関数などをフォームモジュールや標準モジュールに書き込みフォームモジュールから関数を呼び出すような仕組みになっていると思います。(フォームモジュールが主体)ActiveXは、フォームモジュールに通常書いていた関数をクラスモジュールに書き込み、フォームモジュールからクラスを呼び出しクラス内の関数を使用するようなものになっていると思っていました。(クラスモジュールが主体)そのため、先日のような(1)〜(3)の書き方をしました。間違っている場合、ご指摘お願いします。>また、「この方法」って、1)2)は、何の意味があるのでしょう?フォームモジュール内の関数は、そのままでは使えないと判断したからです。すみません。あまり根拠はありません。標準EXEからActiveXに変換する場合、通常どのような方法を取るのでしょうか?宜しくお願いします。
[165] 題名:Re[164]:Re2:標準EXEからActiveXに変更 投稿者:近藤 投稿日:2006/03/26 10:36
>こんにちは。>>>クラスは、理解(使用)していますか?>>クラスモジュールを、理解(使用)していない人の場合、(制作は)無理でしょう。>この自作アプリでは使用していませんが、クラス自体は理解していると思います。>>合っているかどうか判らなかったので、前回投稿内容に記述しませんでしたが...。>>標準EXEをActiveXに変更する場合、>(1)フォームモジュールに書き込んだコントロールのイベントは、クラスモジュール>にてイベントを作成しておき、フォームからクラス内のイベントを呼ぶようにする。>(2)フォームモジュール内のPrivate関数は、標準モジュールにPublic関数として>書き込む。>(3)ActiveX.DLLやActiveX.EXEでコンパイルする。>と考えていました。>>この方法では無理なのでしょうか?>それとも、他に何かより良い方法があったりするのでしょうか?>>宜しくお願いします。呼び出し側と呼び出される(ActiveX)側の区別をして、説明して頂けないと内容がよくわからないですねぇ。また、「この方法」って、1)2)は、何の意味があるのでしょう?
[164] 題名:Re2:標準EXEからActiveXに変更 投稿者:なな 投稿日:2006/03/24 14:19
こんにちは。>クラスは、理解(使用)していますか?>クラスモジュールを、理解(使用)していない人の場合、(制作は)無理でしょう。この自作アプリでは使用していませんが、クラス自体は理解していると思います。合っているかどうか判らなかったので、前回投稿内容に記述しませんでしたが...。標準EXEをActiveXに変更する場合、(1)フォームモジュールに書き込んだコントロールのイベントは、クラスモジュールにてイベントを作成しておき、フォームからクラス内のイベントを呼ぶようにする。(2)フォームモジュール内のPrivate関数は、標準モジュールにPublic関数として書き込む。(3)ActiveX.DLLやActiveX.EXEでコンパイルする。と考えていました。この方法では無理なのでしょうか?それとも、他に何かより良い方法があったりするのでしょうか?宜しくお願いします。
投稿NO:削除キー:
[上]
ホーム