2017-05-24 3 views
1

フレームのキャプションをの動的にという連続形式で設定したいと思います。フレームのキャプションを連続形式で設定する

これまでのところ、私は次のことをやっている:

Private Sub Form_Load() 
    Me.myFrame.Caption = Me.created_date 
End Sub 

これは、すべてのフレームのための最初のレコードの値を設定します。フレームに、私のテーブルの各エントリの "creation_date"を持たせます。

キャプションを動的にするにはどうすればよいですか?フレームコントロールは、テキストフィールドのような "データ"バインディングを持っていないので、私はそれをプログラムで設定する必要があると思います。

+0

フレームを追加することができます( 'Option Group'フレームですか?)、フレームからラベルを削除してテキストボックスを追加し、ラベルのようにフォーマットします。テキストボックスには作成日が表示されます。 –

+0

はい、オプショングループフレームを意味します。あなたのソリューションは回避策のように思えます。キャプションを動的に設定する方法が必要です(少なくとも私はそれを考えています)。バインドされたテキストボックスを空のキャプションの上に置くと、「ダーティー」と聞こえます:) – Tim

+0

これは回避策ですが、@Andreとして機能します。私はあなたがコードと "On Current"イベントで何かできるのではないかと思うが、テキストボックスがあなたのために仕事をするときにたくさんのコードを書いているのはどうして? –

答えて

2

フォームのレコードソースを、使用しているテーブル/クエリのいずれかに設定します。

オプショングループフレームをフォームに追加し、ラベルを削除します。 削除されたラベルがあった場所にテキストボックスを置き、必要に応じてフォーマットします。

あなたの日付フィールドを指しているコントロールソースをテキストボックスに与えてください。それだけで動作するはずです。

enter image description here

enter image description here

+0

私はこの問題をもう一度、今度はボタンを持っています。万が一、回避策のアイデアはありますか?現在のレコードの値を変更するボタンがあり、ボタンを無効にする必要があります。コードで無効にすると、連続フォームのすべてのエントリに対して無効になります。 – Tim

2

あなたは、直接これを行うことはできません。

フレームキャプションのようなバインドされていないコントロールは、連続フォームのすべてのレコードで同じ値を持ちます。

唯一の方法は、Darrenのように、回避策としてバウンドコントロール(テキストボックス)を使用することです。

関連する問題