4

たくさんのパネルとグループボックス内のいくつかのパネルを含むフォームがあります。Vs2005 で TabOrder ツールを使用すると、コンテナーの外側のコントロールには整数 (0) が与えられ、パネル内のコントロールには 10 進数 (72.0) が与えられ、グループボックス内のパネル内のコントロールには 3 つの値 (73.73.0) が与えられます。残念ながら、結果のタブ オーダーは、コントロールをクリックした順序とは何の関係もありません。

このツールはネストされたコンテナーをサポートしていないだけですか? 私は何か間違ったことをしていますか?おそらく、クリックするときに Shift- または Ctrl- を押したままにしますか (これらを試しましたが成功しませんでした)。

すべてのコントロールで 3 部構成のタブ オーダーを手動で入力する必要がありますか? それは残念です。

4

5 に答える 5

7

タブ オーダー ツールは、手動で値を入力するようには設計されていません。ユーザー タブとして進行させたい順序でコントロールをクリックできるように設計されています。

数値は小数ではありません。これらは、親コンテナー内のコントロールのタブ オーダーを表します。たとえば、名前付きのフォームと名前付きのフォームがある場合、次Panelのような数値が表示されます。panel1Buttonbutton1button1

X.Y
  • Xのタブオーダーですpanel1
  • Ybutton1 のタブ オーダーですpanel1

デザイナーが本来あるべきほど直感的 (または透過的) ではないことは認めますが、機能します。

于 2010-06-17T17:04:24.127 に答える
2

VS2010 のグループ ボックス内のテキスト ボックスとボタンで同じ問題が発生しました。TabOrder ツールは役に立たなかった: タブ ストップをどのように並べ替えても、タブ オーダーが壊れていた。正しいタブ オーダーを作成するために、フォーム デザイナーの初期化コードでグループ ボックスにコントロールを追加する方法の順序を変更する必要がありました。

this.groupBox2.Controls.Add(this.startTimeTextBox);
this.groupBox2.Controls.Add(this.endTimeTextBox);
this.groupBox2.Controls.Add(this.exitButton);

この方法では、タブ オーダーは startTimeTextBox -> endTimeTextBox -> exitButton などになります。

于 2013-04-10T11:59:35.463 に答える
0

私はこれと同じ問題を抱えていて、このツールを発見しました:http: //archive.msdn.microsoft.com/cdstabindex

ただし、マニフェストをVS2010で機能するように変更する必要がありました。また、UIを少し良くするためにソースコードを自分で変更しましたが、それでもこのツールを見てみることをお勧めします。

于 2012-11-06T18:10:31.930 に答える
0

デザイナーでそれを行う方法を理解したと思います。完全な順序付けのさまざまな部分を割り当てるには、パネル/グループボックスもクリックする必要があるようです。このように、子コントロール自体をクリックするのではなく、幅優先のクリック方法を使用する必要があるようです。

ユーザーが見ているものだけでなく、フォーム全体の完全な構造を知る必要があるため、ちょっと悲しいです。

于 2010-06-17T17:14:06.650 に答える
0

コントロールからグループボックスを削除 して、もう一度試してみてください:)

于 2015-10-12T06:18:20.797 に答える