ウィンドウタイトルを変えるには?

[戻る]
チョコレート 2000/11/15(水) 14:30:07
本当にVC++始めたばかりの超超初心者です!!
本を読みながら昨日から勉強中ですが、ウィンドウのタイトルを
設定するには、本には「Appwizardのステップ4/6で設定する」
と書いてありましたが、って事はAppwizard終了後、すでにプログラム
なども追加後ではもう、タイトルは変えられないんですか??
きっとどこかに設定とかあるんですよね・・。どこかわかんないよー!
教えて下さい!

2000/11/16(木) 10:25:19
メインウィンドウのタイトルバーの文字列なら、MainFrameクラスでSetWindowTextでOKです。

他のウィンドウ(ダイアログ、ボタン)でもクラス内でSetWindowTextでタイトルを変えられます。

チョコレート 2000/11/16(木) 13:38:39
重さん回答ありがとうございます!
でもでも、えっと、まだ質問するのも早かったのかも
しれないかも・・・。
全然わかんないんですけど、例えば
「あいうえお」って文字入れたかったら

SetWindowText("あいうえお");

っていうのをMainFrameクラスに書きこめばいいのかな?
なんかコンパイルは通ったんですけど、実行できなかったの。
うーん?
もうちょっと本読んでみます・・・。

2000/11/16(木) 14:52:52
これは説明不足だったかな。

MainFrameクラスのコンストラクタやOnCreateでは駄目なんです。


方法その2

::SetWindowText(AfxGetMainWnd()->m_hWnd, _T("あいうえお"));
をウィンドウが作られた後ならViewやDocからでもタイトルの変更が可能です。

::SetWindowText(・・・)
はAPIです。MSDNに説明はあります。解りにくいですけど。

2000/11/16(木) 15:01:25
補足です。

MainFrameのコンストラクタではウィンドが存在していない、
OnCreateでは初期化前なのでSetWindowTextがエラー(又は意味無し)になる。

だったと思います。

チョコレート 2000/11/16(木) 17:23:14
[[解決]]
重さんへ

いっぱい説明ありがとうございます。
でもやっぱり私にはまだ早かったみたい・・・。
本には「タイトルを変えるのはAppwizardの段階で」
って書いてあって「って事は最初の1回だけなの??」
ってすごい疑問に思っちゃって、じゃあ後からどうやったら
変えられるのかな?ってちょっと自分でやってみよう!
って思ったんです・・。でもでも、本に書いてない事を
やってみるにはまだまだ力不足だったみたいです。
いっぱい書いてくれたのにすいません!
って事で、もうちょっと本読んで理解できたら、重さんの
書いてくれたこの回答をもう1回読みなおしてみます。

でもAppwizardじゃなくてもタイトルは変えられる!
って事がわかったので「解決」にしておきますね。

ありがとうございます!!

EIJI 2000/11/16(木) 17:32:43
StringリソースのAFX_IDS_APP_TITLEを変えるのは?

古いスレッドには追加発言できません。