C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
Re[2]: VB.NETのテキストボックス内でAlt+Enterで改行
(過去ログ 97 を表示中)
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法/規約
トピック表示
ランキング
記事検索
過去ログ
[トピック内 4 記事 (1 - 4 表示)] <<
0
>>
■57728
/ inTopicNo.1)
VB.NETのテキストボックス内でAlt+Enterで改行
▼
■
□投稿者/ 猫のジョンくん
(1回)-(2011/03/10(Thu) 17:23:25)
分類:[VB.NET/VB2005 以降]
2011/03/10(Thu) 17:24:07 編集(投稿者)
2011/03/10(Thu) 17:24:05 編集(投稿者)
Multilineのテキストボックスを使用しています。
コントロールのフォーカス移動をEnterで全て統一させたいのですが、
そのMultilineのテキストボックスだけ、Enterで改行されてしまうため、
フォーカス移動はTabキーを使うことになってしまいます。
テキストボックス内の改行をAlt+Enterにしたいのですが、
できますでしょうか。
よろしくお願いいたします。
引用返信
編集キー/
編集
■57729
/ inTopicNo.2)
Re[1]: VB.NETのテキストボックス内でAlt+Enterで改行
▲
▼
■
□投稿者/ じゃんぬねっと
(50回)-(2011/03/10(Thu) 17:44:32)
■
No57728
(猫のジョンくん さん) に返信
> 2011/03/10(Thu) 17:24:07 編集(投稿者)
> 2011/03/10(Thu) 17:24:05 編集(投稿者)
>
> Multilineのテキストボックスを使用しています。
> コントロールのフォーカス移動をEnterで全て統一させたいのですが、
> そのMultilineのテキストボックスだけ、Enterで改行されてしまうため、
> フォーカス移動はTabキーを使うことになってしまいます。
> テキストボックス内の改行をAlt+Enterにしたいのですが、
> できますでしょうか。
> よろしくお願いいたします。
どこでキーを補足しているかによります。
まあ、KeyEventArgs のイベント引数があるようなら、このような質問はされないと思いますので、KeyData しかないメソッドなのだと勝手に想像しての回答になります。
'Enter じゃないなら (・∀・) カエレ!!
If (keyData And Keys.KeyCode) <> Keys.Enter Then
Return
End If
If (keyData And Keys.Alt) = Keys.Alt Then
'改行でおk
Else
'フォーカス遷移でおk
End If
流れとしてはこんな感じでしょう。
引用返信
編集キー/
編集
■57731
/ inTopicNo.3)
Re[1]: VB.NETのテキストボックス内でAlt+Enterで改行
▲
▼
■
□投稿者/ shu
(507回)-(2011/03/10(Thu) 18:11:24)
■
No57728
(猫のジョンくん さん) に返信
FormのKeyPreviewをTrueにしてFormのKeyDownで判定、KeyPressでもHandled=trueにする。
でやればTextBoxのEnterキーより先に判断できますよ。
引用返信
編集キー/
編集
■57743
/ inTopicNo.4)
Re[2]: VB.NETのテキストボックス内でAlt+Enterで改行
▲
▼
■
□投稿者/ 猫のジョンくん
(2回)-(2011/03/11(Fri) 14:13:13)
じゃんぬねっとさん、shuさん、ご指導ありがとうございました。
会社の先輩に手伝ってもらい、お二人の回答を参考に、解決できました。(甘ちゃんですみません^_^;)
If e.Alt = True Then
sender.ActiveControl.SelectedText = vbCrLf
Else
'改行させない
e.Handled = True
'フォーカス移動する
End If
解決済み
引用返信
編集キー/
編集
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
過去ログには書き込み不可
管理者用
-
Child Tree
-