名前 題名 ▼ takiさん > マスターすみません。 > また教えてください。 > > フォームに配置したボタンを押してフォームのFormshowメソッドを呼び出す時、 > FormShowの引数が空だと「実パラメータが足りません」とコンパイラに叱られます。 > > FormShow(Sender);とかFormShow(Self);とすると動きますが、 > どちらが望ましいのでしょうか。 > > FormにLabelとButtonを1個ずつ配置して実験してみました。 > コード(一部抜粋)は以下の通りです。 > > procedure TForm1.Button1Click(Sender: TObject); > begin > label1.Caption := ''; > FormShow(Sender); // TButton > // FormShow(Self); // TForm1 > // FormShow(nil); // 例外クラスEAccessViolation > end; > > procedure TForm1.FormShow(Sender: TObject); > begin > label1.Caption := Sender.ClassName; > beep; > end; > > 結果は、 > プログラムを実行すると、ビープ音がして、ラベルにTForm1と表示されます。 > その後、それぞれのコードでボタンを押すと、 > FormShow(Sender);ならビープ音がして、ラベルにTButtonと表示されます。 > FormShow(Self);ならビープ音がして、ラベルにTForm1と表示されます。 > FormShow(nil);は例外クラスEAccessViolationが発生しました。 > > 「動けば正義」ならどっちでもいいのでしょうか。 GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link