2012-04-21 14 views
0

画面上のキーボードであるプログラムを作った。プログラムには、通常のキーボードのようないくつかのキーと、底面にテキストエリアがあります。ボタンをクリックすると、対応する文字がテキスト領域に表示されます。Cでプログラムでメモ帳に書き込む方法

しかし、これらの文字をプログラムでメモ帳に書きたいと思います。

どうすればいいですか?

編集:

これは私のサンプルコードです。 sendkey APIの振る舞いは?過去には

public Form1() 
{ 
    var myProcess = new Process 
    { 
    StartInfo = 
    { 
     FileName = "Notepad.exe", 
     WindowStyle = ProcessWindowStyle.Normal 
    } 
    }; 
    myProcess.Start(); 
    InitializeComponent(); 
} 

private void BtnBClick(object sender, EventArgs e) 
{ 
    SendKeys.Send("{ENTER}"); 
} 

private void BtnCClick(object sender, EventArgs e) 
{ 
} 
+0

最も簡単な方法は、 'SendKeys' APIを使用することです。 –

+0

私はあなたがはるかに大きな問題を抱えていると推測します:ボタンをクリックすると、メモ帳からのフォーカスが移動します。 osk.exeの使用を検討してください –

+0

ボタンをクリックするとSendKeys APIがうまく動作しないと思います。私はosk.exe @ NiklasBのように完璧に動作するコードのほうが、より良い解決策を期待しています。ありがとう –

答えて

4

私はのSendKeysを使用して、同様のソリューション構築している:

http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.send.aspx

をそして、ここではそれらのウィンドウにフォーカスがなくても、別のウィンドウにキーストークスを送信する方法についてのデモです:

http://www.codeproject.com/Articles/18366/Sending-Keystrokes-to-another-Application-in-C

+0

-1リンク専用です。 –

+11

私はすでに自分のテキストを編集していました – Tys

+0

私は本当にそのことを信じることができません-1 beczいいえリンク – MDMalik

関連する問題