6

フィールド レベルの検証がある場合にモーダル フォームのキャンセルを許可する最善の方法は何ですか?

モーダルに表示される Delphi フォームがあります。その中には、TComboBoxes、TEdits、[OK] および [キャンセル] ボタンがあります。これらのフィールドには、データが有効であることを確認するために起動する OnExit メソッドがあります。ただし、[キャンセル] ボタンをクリックすると、フィールドを検証せずにフォームを閉じることができます。キャンセル ボタンをクリックすると、フィールドの OnExit が呼び出され、フォームを閉じるボタンの OnClick の前に検証が実行されます。このタイミングは、ユーザーが破棄したいデータを修正することになるため、望ましくありません。ありがとう。

4

1 に答える 1

10

「フィールド出口で」のデータ検証を完全に放棄しました。自分が何をしているのかを知っているユーザーを苛立たせます(たとえば、誰かが別のソースからデータをコピーして現在の画面に貼り付けている場合、すべてのデータが貼り付けられた場合にのみ意味があります-通常はフィールドごとの検証そのような行動の邪魔になります)。

代わりに、ユーザーが現在の画面から移動する準備ができたとき、通常は[OK]または[次へ]ボタンをクリックしたときに、データ検証を実行してみてください。

于 2012-08-27T15:19:16.337 に答える