ラベルとラジオボタンがそれぞれ90以上のVFPフォームクラスを生成するプログラムを作成しています。それは簡単な部分です。 (そしてはい、私はそれがラジオボタンがたくさんあることを知っていますが、それはユーザーが望むものです)。定義されているオブジェクトのサブコンテナへのオブジェクトの追加
我々のアプリケーションには、いくつかの類似したVCXがありますが、多くの個別コントロールの近くにはありません。だから、私の人生の大部分をフィールドをドラッグ・アンド・ドロップするのではなく、すべてのフィールド、オプション、デフォルト値の便利なリストがあることに気づかずに、クラスの「View Class Code」オプションを使用しましたブラウザを使用して、コードがベースと見えるもののサンプルを取得します。それから、私は必要なすべての部分でPRGを生成するコードを書いた。
私の実際の問題は、「表示クラスコード」によってコード出力が無効な構文が含まれているようだということです。
DEFINE CLASS form40 AS frmae
Height = 427
Width = 710
ScrollBars = 2
DoCreate = .T.
Visible = .T.
Name = "form40"
ADD OBJECT form40.cntouter.cntform40 AS cntctrls WITH ;
Top = 175, ;
Left = 2, ;
Visible = .T., ;
Name = "Cntform40"
ENDDEFINE
クラスfrmaeは「cntouter」と呼ばれる容器を含む(VCXから)クラスであります。クラスcntctrlsは、すべてのラベル/ラジオボタンを含むコンテナです。
問題は明らかに、DEFINE CLASSコマンドでメンバーにADD OBJECTを追加できないことです。ドット付き構文は構文エラーを引き起こします。それでも、この手法は「クラスコードの表示」出力で使用されます。
私は、コントロールコンテナをcntouterに追加するためにADDOBJECT()を呼び出すInitメソッドを生成することでこの問題を回避できると思っていますが、私はむしろクラス定義で使用したいと思います。
「クラスコードの表示」が使用できないことはわかりませんでした。 Grr。 – LAK
ありがとうございます。生成されたコードが悪いことを知ることが鍵です。私は既存のコードを再利用することなく、クラスを構築します。 – LAK