FindComponentを使用するとDataModuleに置いたTableでエラーが発生


かず  2007-02-07 00:50:34  No: 24803

FindComponentを使用してソースを楽に書こうとするとDataModuleのTableがBDEエラーになってしまいます。内容はエリアスが無い〜。
このTableをFindComponentを使用しているフォームに移すと問題なく動作します。
解決方法はないでしょうか。


えーと  2007-02-10 03:09:56  No: 24804

> このTableをFindComponentを使用しているフォームに移すと問題なく動作します。

FindComponent は汎用の関数ではなく TComponent のメソッドです。そのコンポーネントが
所有しているコンポーネントを検索するものです。
ですから、フォームの FindComponent で DataModule の Table をさがすことは出来ません。

おいている DataModule の FindComponent を使うといいのでは?


かず  2007-02-10 07:11:38  No: 24805

書き方が悪かったようです。
FindComponentで探しているのはTEditです。TLabelなどもエラーになります。
このコンポーネントだけというわけではないようです。

そのフォームにTDBEditやTDBGridがあるのでDataModuleをunitとして追加してあり、FindComponentのところでBDEに関係するエラーを表示してしまう。不思議な現象です。


りっきぃ  2007-02-14 21:55:32  No: 24806

えーとさんが既に回答されていると思いますが、
FindComponetメソッドの親もちゃんと修飾してあげるといいですよ。

以前ここで同じような現象で悩んだ人がいて、この方法でちゃんと解決しています。
我々の言ってることが理解できてないようでしたらHelpを熟読するかここの過去ログを参照するといいかもしれません。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加