シリアルキー登録プログラムを作ろうとしています。リソース内のテキスト ドキュメントからシリアル キーを入力すると、アクションが発生するようにするにはどうすればよいですか? 誰かがテキスト文書にある特定のシリアルキーを入力して登録を押すと、アクションがトリガーされることを息子に望んでいます。
2 に答える
WinForms ist では、イベント ハンドラーを作成するのは非常に簡単です。フォーム デザイナーで、シリアル キーのテキスト ボックスを選択します。プロパティ ウィンドウで、稲妻の記号の付いたボタンをクリックしてイベントに切り替えます。ここでは、多くのイベントから選択できます。TextChanged
イベントはいいものです。文字が入力または削除されるたびに発火します。Key...
さまざまなイベントを実行したい場合に応じて、Leave
1 つまたはValidated
複数のValidating
イベントが役立つ場合があります。ボタンを使用している場合は、ボタンをダブルクリックして、Click
イベントのハンドラーを取得します。
イベント名の横にある空のフィールドをダブルクリックします。Visual Studio によってイベント ハンドラーが自動的に作成されます。
.NETでは、特定のTextBoxエントリが埋め込みリソースに存在するかどうかをチェックするプログラムを作成するのは非常に簡単です。だが...
.NETは、この種のことを完全に行うのに適したプラットフォームではないことに注意してください。ILSpyなどの無料で入手可能なソフトウェアを使用して、ドキュメント/リソース(すべての有効なキーが含まれる)をだれも読み取れないようにするのに比べて、実装は非常に簡単です。
この質問も確認してください。
単純な実装は次のようになります。
TextBox ValidationKey = new TextBox();
EventHandlerのバインド:
ValidationKey.KeyPress += new KeyPressEventHandler(ValidationKey_KeyPress);
EventHandlerの実装:
private void ValidationKey_KeyPress(object sender, KeyPressEventArgs e)
{
bool isKeyValid = MyResourceFile.Keys.Contains(ValidationKey.Text);
MessageBox.Show(string.Format("Is it a valid key: {0}", isKeyValid.ToString()));
}
これは、ユーザーが1文字だけ入力すると、テストに合格する可能性が非常に高いという点で、非常に単純な実装です。RegExpを使用するか、最初ValidationKey.Text.Length
に有効なキーの長さに等しいことを確認することをお勧めします。