ピクチャボックス上のテキストボックスで日本語入力するには?


マツーン  2007-02-02 06:36:40  No: 97826

※投稿場所を間違えましたのでこちらへ変更しました

リストボックスで選択されたフォームのコントロール郡をピクチャボックスへ移動させるというプログラム
(FireFoxのオプション画面のような表示)
なのですがなぜかピクチャボックスに表示されたテキストボックスに日本語が入力できません。
IMEが_Aという表示の周りに枠線がつきロックされているようになってしまい日本語入力に切り替えることができません。
どのコントロールもIMEモードは操作しておらずデフォルトのままです。
お知恵をお貸し願えませんでしょうか、お願いいたします。
環境は VB2005  です

---フォーム-----
FormA Texbox1

MainForm ListView1
 PictureBox1

---プログラム---
Private ConfigForm As Form

sub  ListView1_SelectedIndexChanged
 For Each si As ListViewItem In ListView1.SelectedItems
   '旧コントロール群の移動
    If Not IsNothing(ConfigForm) Then
     Do Until PictureBox1.Controls.Count = 0
       PictureBox1.Controls.Item(0).Parent = ConfigForm
     Loop
    End If

    Select Case si.Index
       Case 0
         ConfigForm = FormA
    End Select

   '新コントロール群の移動
    Do Until ConfigForm.Controls.Count = 0
       ConfigForm.Controls.Item(0).Parent = PictureBox1
    Loop
 Next
end sub


matsu  2007-02-06 20:35:51  No: 97827

>リストボックスで選択されたフォームのコントロール郡をピクチャボックスへ移動させるというプログラム
>(FireFoxのオプション画面のような表示)
>なのですがなぜかピクチャボックスに表示されたテキストボックスに日本語が入力できません。
>IMEが_Aという表示の周りに枠線がつきロックされているようになってしまい日本語入力に切り替えることができません。

ピクチャボックスがImeModeプロパティを持っていないのでWindows.Forms.ImeMode.Disableに設定されるみたいですね。

ConfigForm.Controls.Item(0).Parent = PictureBox1

Dim objCtr As Control
objCtr = ConfigForm.Controls.Item(0)
objCtr.Parent = PictureBox1
objCtr.ImeMode = Windows.Forms.ImeMode.NoControl
とすれば入力できると思います。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加