テキストボックス

タグの編集
投稿者 la  (中学生) 投稿日時 2011/7/9 22:32:48
掲示板やチャット、メモ帳などの文字入力をするところにTextBox1に入力してある文字を入力させるためにはbutton1にどのような記述をすればよいのでしょうか?
投稿者 shu  (社会人) 投稿日時 2011/7/9 22:41:00
頑張れば出来ないことはないと思いますが、
とりあえず
TextBox1.SelectAll()
TextBox1.Copy()
でクリップボードへ入りますのでそれでは駄目でしょうか?
 
投稿者 るきお  (社会人) 投稿日時 2011/7/10 08:25:15
バージョンが書いていなかったので最新版のVB2010 SP1として回答します。

掲示板・チャット・メモ帳、それぞれどのようなアプリケーションを使ってどのようにアクセスしているのかによって方法はまったく異なりますし、そのアプリケーションによってはそのようなことは実現不可能かもしれません。

とりあえず、メモ帳に「こんにちは!」と書き込む例を紹介します。
SP1
Public Class Form1

    <DllImport("user32")>
    Private Shared Function FindWindow(lpClassName As String, lpWindowName As StringAs IntPtr

    End Function

    <DllImport("user32")>
    Private Shared Function FindWindowEx(hWnd1 As IntPtr, hWnd2 As IntPtr, lpsz1 As String, lpsz2 As StringAs IntPtr

    End Function

    <DllImport("user32")>
    Private Shared Function SendMessage(hWnd As IntPtr, wMsg As UInteger, wParam As Integer, lParam As StringAs Long

    End Function

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click

        '起動している「メモ帳」に「こんにちは!」を書き込む 
        Dim hNotePad As IntPtr = FindWindow("Notepad"Nothing)
        Dim hEdit As IntPtr = FindWindowEx(hNotePad, IntPtr.Zero, "Edit"Nothing)

        Const WM_SETTEXT = &HC
        SendMessage(hEdit, WM_SETTEXT, 0, "こんにちは!")

    End Sub
End Class