私はキャプチャ署名と呼ばれるボタンを備えた MainForm (WinForm) を持っています。このボタンのClick
イベントでは、インスタンス CaptureSignatureForm を作成しています。コードは次のとおりです。
MainForm oSign = new MainForm(this);
oSign.ShowDialog();
フォームが開いているときに署名をキャプチャし、キャプチャ後にフォームを閉じます。
キャプチャ署名ボタンを 2 回目にクリックすると、エラーがスローされます。"Object reference not set to an instance of an object"
サードパーティの dll を使用して署名を取得しています。
if 条件の斜体の太字テキストでエラーが発生します。control は signaturecapturedevice のオブジェクトです。サード パーティのドキュメントによると (タブレットに接続すると、機能オブジェクトが自動的に入力されます)。
if (control.EnsureConnected() && ***control.capabilities.LCDWidth != 0***)
{
this.ClientSize = new Size(tabletWidth, tabletHeight);
if (model == Model.STU300)
{
btnOk.SetBounds(tabletWidth - 80, 0, 80, tabletHeight / 3);
btnClear.SetBounds(tabletWidth - 80, tabletHeight / 3, 80, tabletHeight / 3);
btnCancel.SetBounds(tabletWidth - 80, (tabletHeight / 3) * 2, 80, tabletHeight / 3);
}
else
{
btnOk.SetBounds(0, tabletHeight - 55, tabletWidth / 3, 55);
btnClear.SetBounds(tabletWidth / 3, tabletHeight - 55, tabletWidth / 3, 55);
btnCancel.SetBounds((tabletWidth / 3) * 2, tabletHeight - 55, tabletWidth / 3, 55);
}