6

Ctrl+Sを永続的に押すのは私の習慣とはかなり矛盾しています。マイナス面は、delphiが保存時に空の関数/プロシージャを削除することです。

保存時に本文が空の関数/プロシージャがIDEから削除されないようにする方法はありますか?

4

3 に答える 3

18

OPリクエストに従ってコメントから変換されます。私のコメントは答えには小さすぎるので、OPにすでに明らかな詳細をいくつか追加します。

これは、イベントハンドラーでのみ発生します¹。遅滞なく書くか、todo²でコメントしてください

¹つまり、イベントハンドラーはデザインクラスのメソッドであり、フォームデザイナー(データモジュールデザイナーやインストールされている他のカスタムデザイナーを含む)によって作成、一覧表示、削除されます(保存またはコンパイル時に空になった場合)。C#のバックグラウンドからおそらくおなじみの代表者に相談してください。その他の方法は、「手動」管理の対象となります。

²TODOアイテムCtrl+Shift+Tデフォルトのキーバインド)は、単なる空白のコメントよりも間違いなく優れています。

procedure TForm1.MagicButton1Click(Sender: TObject);
begin
  { TODO -ctomorrow : I'm going to write the code, I promise! }
end;

考えられる特殊なケース

TActionwith AutoCheckset must (実行時の別の可能性については、以下のSir Rufoからのコメントを参照)をOnExecute割り当てるために割り当てられている必要がありますEnabled。この場合、必然的に、デザインクラス内にそのような空白のイベントハンドラーが必要になります。例:

procedure TMonitor.AutoCheckActionExecute(Sender: TObject);
begin
  // dummy stub
  { DONE -crefactor : merge with other stub(s) }
end;
于 2012-11-23T09:44:14.270 に答える
13

次のような空のコメントを追加するだけです//

begin 
//
end;

別の方法は、宣言をに移動することですpublished part

type
  TForm5 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject); // will be removed if empty
  private
    { Private-Deklarationen }
  public
  published
    procedure Button2Click(Sender: TObject); // will not be removed if empty

    { Public-Deklarationen }
  end;
于 2012-11-23T07:22:55.917 に答える
7

保存時にIDEが空の本文を持つ関数/プロシージャを削除しないようにする方法はありますか?

IDEには、この動作を無効にするオプションはありません。

于 2012-11-23T08:03:27.453 に答える