対象の文字が入力されたら・・・ への返答

投稿で使用できる特殊コードの説明。(別タブで開きます。)
本名は入力しないようにしましょう。
投稿した後で削除するときに使うパスワードです。返答があった後は削除できません。
返答する人が目安にします。相手が小学生か社会人かで返答の仕方も変わります。
最初の投稿が質問の場合、質問者が解決時にチェックしてください。(以降も追加書き込み・返信は可能です。)
※「過去ログ」について書くときはその過去ログのURLも書いてください。

以下の返答は逆順(新しい順)に並んでいます。

投稿者 モリオ  () 投稿日時 2008/9/13 21:11:00
<あにすさん 
変更前と変更後を比べるのですか。 
なるほど。勉強になりました。 
コードも載せていただきありがとうございました。 
 
 
<鍵さん 
テキストボックスでなくキーで判断するのですね。 
キーコード?がわからなくその方法は断念していたのですが、わかりました。 
また、コードを載せていただきありがとうございました。 
もっと勉強していきたいと思います。 
 
 
お二人とも本当にありがとうございました。
投稿者   () 投稿日時 2008/9/13 19:03:00
こんにちは。 
 
TextChangedイベントでなくてもいいのならば、 
KeyDownイベントで押されたキーを判定するというのは 
どうでしょう。 
 
    Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown 
        If e.KeyData = Keys.OemPeriod + Keys.Shift Then 
            MsgBox(">が追加されました。") 
        End If 
    End Sub
投稿者 あにす  () 投稿日時 2008/9/13 18:47:00
こんな感じかなっと… 
 
Option Strict Off 
 
Public Class Form1 
 
    Dim 前回の文字列 As String = "" 
 
    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) _ 
    Handles TextBox1.TextChanged 
        Dim TextBox As TextBox = sender 
 
        If 追加文字の抽出(前回の文字列, TextBox.Text) = ">"c Then 
            MsgBox(">が追加されました。") 
        End If 
 
        前回の文字列 = TextBox.Text 
    End Sub 
 
    Private Function 追加文字の抽出(ByVal 変更前 As String, ByVal 変更後 As String) As Char 
        If 変更後.Length < 変更前.Length Then 
            Return Nothing 
        End If 
 
        For I As Integer = 0 To 変更前.Length - 1 
            If 変更前(I) <> 変更後(I) Then 
                Return 変更後(I) 
            End If 
        Next 
        Return 変更後(変更後.Length - 1) 
    End Function 
End Class
投稿者 あにす  () 投稿日時 2008/9/13 18:20:00
文字列が変更されるたびに文字列を保持しておいて、 
前回の文字列と比較してはいかがでしょうか?
投稿者 モリオ  () 投稿日時 2008/9/13 03:35:00
こんにちは。 
早速ですが、よろしくお願いします。 
 
各サイトを見てまわったのですが、 
テキストボックスが変更されたときに何かをすることは 
Changeでできますが、 
対象の文字、今回は">"が入力されたかどうか。 
また入力されたときに例えばMsgBoxを表示などはどうすればよいのでしょうか? 
 
教本?ではないですが、VBの本にものっておらず、 
あるサイトでは、Changeのことはいちおう書いてあったのですが、詳しく書いておらず、 
またこちらのサイト内も拝見しましたが、特定の文字が・・・ということがわからなかったのです。 
 
 
どなたか教えていただけますでしょうか。 
よろしくお願いします。