※投稿場所を間違えましたのでこちらへ変更しました
リストボックスで選択されたフォームのコントロール郡をピクチャボックスへ移動させるというプログラム
(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
>リストボックスで選択されたフォームのコントロール郡をピクチャボックスへ移動させるというプログラム
>(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
とすれば入力できると思います。
ツイート | ![]() |