2009-08-14 4 views
0

を盗聴されている、私はコンパイル時に警告の数を取得しています:Delphiの警告が私に私のコンポーネントセットのいずれかで

方法は(クリア、DrawTab)を作成することは基本型ControlXの仮想メソッドを隠します。

私の問題は、これを正しく修正する方法(ソースコードがあります)を知るためには、仮想メソッドとDelphiについて十分にわかりません。誰もがこのタイプのエラーをDelphi 5で修正する方法を知っていますか?あなたは、基本クラスのバージョンをオーバーライドしている

function Create(clr :Clear; dt : DrawTab); override; 

このフラグ:

答えて

9

あなたがオーバーライドしてメソッドをマークする必要があります。

+6

仮想メソッドをオーバーライドする場合にのみこれを行います。置き換える場合は、代わりに "reintroduce"を使用してください。 –

+0

@Mason:非常に真実。 @Tom:この場合、「コントロール」を「作成」しているので、より一般的な使用法であるベースクラスのバージョンをオーバーライドして呼び出すことをお勧めします。 –

+2

「オーバーライド」は、元のメソッドが仮想(*)で、パラメータが同じである場合にのみ機能します。上記のように、メソッドを置き換える場合は、 "reintroduce"を使用します。同じ名前の代替メソッドが必要な場合は、 "overload"を使用します。 –

関連する問題