掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ユニット分割について (ID:150043)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>take 様 >選択してボタンを押すと、そのDelphiソースファイルが実行され >返り値の表示や、ソース内のプロパティからメインプログラムのフォームも触りたい。 >こうですか? 概ねそのような感じですが目的としてはコンポーネントのプロパティーを必要なときに外部アプリで取得をしたい。でも、そのためにはusesしなければ取得できない。が、必要あるなしにかかわらずusesしなくてはいけない、ので、選択してボタンを押すと、usesしたDelphiソースを生成し、それをコンパイル実行でusesされた物を作りプロパティーをtext書き出しと考えました。メインフォームを操作できるかどうかは必要ない感じになり、理想は外部アプリでコントロール名だけでプロパティーを参照できることを求めている感じになります。 なので、Mr.XRAY様のページでみたであろうコマンドラインコンパイルというのがソーステキストのPASを与えて実行ファイルを作れるという認識で捉えているので、そのような物で無かった場合は、まったく自分の勘違い想定な感じです(実際には実行まではたどり着け無いでおわらせてしまったので・・・。あっ。ですがMr.XRAY様に解説してほしいと言っているわけではないので触れなくても大丈夫です。次に試したときにもう少し自身で突き進められるとおもうので) >KONNOYA様。 >最初に申し上げましたが、関数とメソッドは異なる物です。 メソッドはコントロール等に用意されている物で、関数は自作する物と言う認識しか無いのですが・・・そこの認識が違うととどのような問題に接触するかが把握できていない感です。 >もしかして下記の様な事を求めていらっしゃいます? すっごく近くなりました!! それのSubType.pas がSubCode.pasに含まれている物を求めています。 上記のような状態になっており、引数で呼び出し元等が変わっても 動作する物を求めています。 今回のはMr.XRAY様の言うようにメインフォームにマウスイベントを記述しなくてはいけない。そぼ用にしたければ表示上別ファイルに出来るという感じで認識しましたが 求めている理想の物は KONNOYA 様に最初に教えていただいた Self.OnClick := TNotifyEvent( Method ); のようにフォームの動的生成と同じ外部ファイルにイベント処理ももちつつSelf.Onmousedownや Onmousemoveを似たような感じで処理できるのを求めている感じです。 それと前回のmessageで取得する方法も同じ理由で動的生成しても使い方がわからない 感じで無理な気がしてきました。 ------------------------------ unit sample_module; interface uses windows,Dialogs,forms,ExtCtrls,Graphics,Controls,Classes,SysUtils,AppEvnts,messages, StdCtrls; procedure go(sender:tobject;form:tform); procedure ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); implementation procedure ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); var Message: TMessage; Pt: TPoint; begin showmessage(inttostr(Msg.pt.X)); end; procedure go(sender:tobject;form:tform); var ti:timage; tf: TForm; ta:TApplicationEvents; begin tf:= TForm.Create(nil); tf.Caption := 'overlay1'; tf.FormStyle:=fsStayOnTop; tf.width:=200; tf.Height:=200; tf.Show; ta:=TApplicationEvents.Create(nil); //ta.Parent:=TForm(tf); //使えない ta.OnMessage:= ApplicationEvents1Message;//ここもKONNOYA様の言う関数とプロパティーは違うという理由で参照不可 end; ------------------------------
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.