私はまだ比較的新しいVBです。私のプログラムを書く際に、自分のフォームにある多くの計算のためにテキストボックスの変更を追跡しています。vbデバッグテキストボックスの変更
私は変更を追跡するDIRTYコードを持っています。何か変更があった場合、保存または無視するように求められます。
私の質問は、「ダーティー」が発生した場合、何が変更され、msgboxで更新されたがっているかを表示する方法です。コードによって変化が検出されるときもありますが、私はそのような明らかな変化を見ることができます。いずれか、またはどのようにしてDEBUG経由で変更されたものが検出されますか?テキストボックスが色を変えて変化したとしても、少なくとも私は何が変わっているのかを特定することができます。次のように
私DIRTY CODEは次のとおりです。
Private Sub Dirty()
If Not LoadForm Then
' Validate()
FuelTableBindingSource.EndEdit()
If Fuel.HasChanges Then
MeMsgBoxSaveChanges.ShowDialog()
If MeMsgBoxSaveChanges.Result = "Yes" Then
NavSaveBtnFuel.PerformClick()
Else
Fuel.RejectChanges()
End If
End If
End If
End Sub
良い情報...さらにビットを明確にするために..あなたに感謝 - 私は私の一つの形で多くの多くのテキストボックスを持っています。これらのテキストボックスの約1/3が計算の結果として設定されます。ユーザーはそれらのテキストボックスで何もできません。レコードが単にロードされ、表示され、BindingNavigatorを介して別のレコードに移動された場合、何らかの未知の理由でDirtyがトリガーされ、ユーザーは既定または反応によって、以前に保存されたものを上書き保存します。いかなる価値の明らかな変化も認められない。これはすべてのレコードで起こるわけではありませんが、レコードを表示するたびに迷惑になるほど頻繁に起こっています。だから私はMsgBoxディスプレイにDirtyと呼ばれるものを表示させたり、デバッガを使ってこれを行います。これは、1:フォーム書式設定のエラーが存在するかどうかを判断するために使用します(例えば、小数点以下3桁から小数点以下2桁まで)。私は小数点以下3桁を使用していますが、すべての計算フィールドではありません)2:計算エラー(計算エラーをキャッチするコードがありますので、これはまれです)3:あなたの答えに基づいて、私は多くのすべてのテキストボックスを入力する必要があります、その計算などダーティコマンドには?
「ダーティー」は正しい単語ではなく、迷惑なコードです。ユーザーは常に「はい」をクリックし、繰り返し実行する必要があることに悩まされます。それが本当に意味することは、「私のコードが次にひどくひどくひどくなるかどうかはわかりません。実行してもよろしいですか?」 Noを選択するには十分ですが、それは起こりません。あなたのコードをテストするためのバイパスはありません。テストするつもりはありません。 –
誰も私のコードをテストすることは一度もありません。私はちょっとした助けを借りてそれを自分自身で把握しようと考えています。あなたの役に立たない答えに感謝します。 –