掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
クリップボードを使わないで文字をコピー・ペーストするには? (ID:117661)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ソース中に記載されているコメントを読めば、大まかな流れはつかめると思いますが、 Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click '次に(ニセ)クリップボードにデータを入れる Clip = TextBox1.Text.Substring(TextBox1.SelectionStart, TextBox1.SelectionLength) End Sub のソースは「コピー」の動作をさせています。 変数ClipにTextBoxでフォーカスを与えた文字列のみを入れています。 Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.Click selection = TextBox1.SelectionStart 'データをカットする If selection >= 0 Then mozi = TextBox1.Text.Substring(0, selection) & Clip & TextBox1.Text.Substring(selection) 'TextBoxの内容をクリアする TextBox1.Text = "" 'TextBoxに表示 TextBox1.Text = mozi End If End Sub のソースは「貼り付け」の動作をしています。 まず、変数selectionにカーソル位置をいれて、 IF文でカーソル位置が0より小さいかどうかを判断させて、 次にTextBoxの文字列をカーソルの位置を基準に左と右に分けて、その真ん中に変数Clip(ニセクリップボード)入れて、 つなげた文字を変数moziに入れて、 TextBoxの文字を全て消し、 変数moziの内容をTextBoxに入れていると言うソースです。 ってミスをしているのに気がつきました。 よく、考えれば、IF文は必要ありませんでした。 すでにカーソルがテキスト内にある時点で必ず、どう考えても0以上に なってしまいます。 っということでIF文は必要ありません。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.