.net環境でTab送り

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
初心者

.net環境でTab送り

#1

投稿記事 by 初心者 » 16年前

よくメモ帳であるTabキーを押すとずれるようにしたいです。

.net環境でマルチラインで作ったテキストボックスのTab送りをしたいです。
VCで作っています。

Justy

Re:.net環境でTab送り

#2

投稿記事 by Justy » 16年前

 メモ帳と同じ、ですか。


TextBoxBase.AcceptsTab プロパティ (System.Windows.Forms)
ttp://msdn.microsoft.com/ja-jp/library/system.windows.forms.textboxbase.acceptstab(VS.80).aspx

 このメンバを Trueにすると Tabキーのイベントが来ますよ。

初心者

Re:.net環境でTab送り

#3

投稿記事 by 初心者 » 16年前

ご回答ありがとうございます。
フォームの部品を読み込んだ時にAcceptsTabを特に記載しない前提です。

キーイベント時に
上だとシフトを押してる時はTabがきくという意味だと思います。
下だとシフトを放している時はTabがきくという意味だと思います。
上は問題なく動作するのですが
下が無反応です・・・。(Tabの効果が出る)
なぜなんでしょうか・・・?
                   //上
				 if(e->Shift == true){
					 this->textBox->AcceptsTab = true;
				 }else{
					 this->textBox->AcceptsTab = false;
				 }

                   //下
				 if(e->Shift == false){
					 this->textBox->AcceptsTab = true;
				 }else{
					 this->textBox->AcceptsTab = false;
				 }

バグ

Re:.net環境でTab送り

#4

投稿記事 by バグ » 16年前

まさかとは思いますが、キーが押されないからキー入力イベントが発生していない…なんて事はありませんよね?

キー入力イベントはキー入力に応じて発生するイベントです。

つまり上の記述だと、シフトが押された際にイベントが発生しますが、下の記述だとシフトを押さずに、シフト以外のキーが押された際に初めて処理される訳です。

つまり、シフトが押されていない状態だけを判別したいならば、『シフトが押された場合』と『シフトが放された場合』の両方で判定してやらなければいけません。

初心者

Re:.net環境でTab送り

#5

投稿記事 by 初心者 » 16年前

バグ様

何んとなくわかった気がするのですが放された時とはどういう意味でしょうか?
現在Shiftが押されているときにTabをおしても反応しないが
Shiftが押されていない時にTabをおすと文字送りをしたいです。

具体的にどのように書けばよろしいのでしょうか・・・?

初心者

Re:.net環境でTab送り

#6

投稿記事 by 初心者 » 16年前

すみません・・・
自己解決しました。みなさんありがとうございます。

閉鎖

“C言語何でも質問掲示板” へ戻る