いつもお世話になります。Win-XP + Delphi6/PersonalでVBからDelphiへの移植を始めたばかりですので多分初歩的な問題だと思いますが教えてください。
Procedure xxxxx; を多用していましたが度々出てくる'未定義の識別子:'xxxxx'の問題に対してProcedureの位置を上にずらしたりすれば良さそうである、との経験からこれで対処してきました。ところが3000行近くになって入れ子が多いためか順序の設定がかなり複雑になってしまいました。何とかこの問題から開放されたいと思い解決方法があれば、とお助けを求めた次第ですのでよろしくお願いします。
インターフェースの状況次第で答えが変わるので、C で言うところの「関数プロトタイプ」相当の部分を提示してください。
Procedure xxxxx;
というのを、
TForm1.Procedure xxxxx;
と書き直し、
その行で、Ctrl+Shiftキーを押しながらCキーを押すと、Private 宣言に関数が登録されます。
implementation より上に宣言だけしておけば、実装部では、すべて使えます。
実装部の記述が
Procedure TForm1.xxxx 〜形式のものは、
インターフェース部のクラス宣言内に(も)、
Procedure xxxx 〜と(ヘッダのみ)記載。
実装部の記述が
Procedure xxxx 〜形式のものは、
implementation より上(つまりインターフェース部)に(も)、
Procedure xxxx 〜と(ヘッダのみ)記載。
deldelさん、えーとさん、記述さん、ありがとうございました。今までの苦労がウソみたいに解決しました。これで順序を気にしないでできますので能率は飛躍的に向上すると思いますので大いに助かりました。
最後に一つだけ質問させていただきます。いただいたアドバイスの中で
>>TForm1.Procedure xxxxx;
>>と書き直し、
>>その行で、Ctrl+Shiftキーを押しながらCキーを押すと、Private 宣言に関>>数が登録されます。
というものをいくつか試したのですがPrivate宣言は変化しませんが何かコツ、ルールみたいなものはあるのでしょうか? これができると登録は更に簡単になると思います。
ごめんなさい、
Procedure TForm1.xxxxx;
でした。
deldelさん、何度もすみませんが教えてください。
例えば Procedure TForm1.GetSrcPic; と書いて行の頭、末尾、行全体を選択などしてCtrl+Shift+'C' を何度も試しましたが宣言部には何の変化もありません。 何かコツなどあるのでしょうか? 便利な技なのでマスターしたいと思います。
こちらはDelphi5 Proですけど、
Procedure TForm1.GetSrcPic;
begin
end;
と書いて、
Procedure TForm1.GetSrcPic;
上のどこでもいいですからカーソルを置いて、Ctrl+Shift+'C'を行うと、
private
procedure GetSrcPic;
が生成されます。
Personalでは無理なのかなぁ・・・
ちなみに、
{ Private 宣言 }
procedure GetSrcPic;
と書いて、この行でCtrl+Shift+'C'を行うと、
procedure TForm1.GetSrcPic;
begin
end;
が生成されます。
personal では出来ません。
deldel様、えーと様 了解しました。PersonalとProfessionnalの差を初めて体験しました。
製作段階の問題はこれはこれとしてソフトをPersonalで動かす上で上位ソフトとの決定的な機能的な差はどのようなところにあるか実感をお聞かせください。 Delphiのスキルも当方で使う程度であれば何とか克服できるかも知れないと過信しはじめ、そろそろProfessionalの購入も考えたいと思いますので。
データベース関連が Professional 以上から使用できます。
個人ユースであれば、BDE と PARADOX が標準で使用できるのが便利です。
ORACLE とか SQL-Server になると、さらに上位ソフトが必要です。
Pro 以上の最大のメリットは、VCL のソースを読むことが出来ることです。
めるめる様、えーと様 ありがとうございます。
価格など調べて懐と相談をはじめることのします。
ツイート | ![]() |