0

些細なはずです。. . VS リソース エディターを介して編集する場合.... ツール/オブジェクト リストには「静的テキスト」のみが表示され、イベント ハンドラーの作成ウィザードにはすべてのフィールドと [次へ] ボタンが淡色表示 (無効) されます。

私は素敵な About ボックスを持っています -- それはすべて動作します -- しかし、表示する静的なテキストフィールドの代わりに --

現在のランタイム ステータス情報を数行 (文字列) 表示したい/表示する必要がある.....

私はVisual Studioを十分に知っています(私は2008を使用しています)。. .

簡単な例があれば、それで十分です。

前もって感謝します。

敬具、 ケビン・ウェイト

4

3 に答える 3

2

ダイアログに静的テキスト ボックスを配置すると、そのテキストを実行時に好きなように設定できます。まず、テキスト ボックスのウィンドウ ハンドルを取得する必要があります。

HWND hwndText = GetDlgItem(hwndDialog, IDC_MYTEXT);

次に、新しいテキストをそれに設定できます。

SetWindowText(hwndText, L"Hi mom, this is my first text box!");

静的テキストは変更することを意図していないため、変更したときに Windows が常に正しいことを行うとは限りません。新しいテキストが適切に表示されるように、消去して再描画するように指示する必要があります。

InvalidateRect(hwndText, NULL, true);
于 2012-02-08T16:02:33.437 に答える
0

複数行のテキストを表示する場合は、EditBox コントロールを使用して、multiline プロパティを True に設定できます。

アバウト ダイアログにデータを渡すには、ダイアログの作成時 (DoModal の呼び出し前) にこれらの文字列をダイアログに渡す必要があります。aboutbox OnInitDialog の編集ボックスに文字列を追加します。

アバウト ダイアログが開いている間にテキストをライブで更新する必要がある場合は、どこかから文字列をフェッチするスレッドを追加する必要があり、UI はそれらの新しい文字列で更新されます。

幸運を。

于 2012-02-08T16:02:18.623 に答える
0

空の静的テキストを追加して、そのTextプロパティを設定するだけではどうですか?

Visual Studio C++ Express で空の Windows フォーム アプリケーションを作成し、「ラベル」コントロールをフォームにドラッグしました。フォームLoad関数では、テキストは次のように設定できます。

this->label1->Text = "Hello World";

より大きなテキストが必要な場合は、同じ方法を使用できます。代わりに複数行の TextBox を使用してください。

于 2012-02-08T15:38:32.220 に答える