よろしくお願いいたします。(環境 WIN98 VC++6.0 MFCにて)
ダイアログではなくメインウインドウにボタンを貼る方法として、以下サイトが大変
分かりやすく参考になりました。
http://munch.c.u-tokyo.ac.jp/vc/vc4_03.html
しかしながら、最初に”リソースのストリングテーブルを変更”という作業があります。
この方法が私にとってはなじみがなく、出来れば直接ボタンの絵を貼り付けたいと思うのです
が、可能なのでしょうか?
プロジェクト新設時のウイザードのステップ6/6にて基本クラスにCFormViewを選べば
灰色の背景に貼れますが、あくまでも白いメインウインドウに張りたいのです。
灰色画面に張ってあとで、プログラム上から背景を白色に変更できればそれでもOKです。
また、上記が不可だとすれば、”リソースのストリングテーブルを変更”の代わりに
コードをこういじれば良いという方法でも良いよいです。
コードを直接いじるのが大変なので、ストリングテーブルの変更で対処するのでしょうが、
プログラマーから見ると邪道に思えてしまうことと、以前タイトルバーの名前を変更しようとし
たときにうまくいかずコード変更のほうが簡単(確実)だったので。
最後に上記すべてが面倒で、今回の場合はストリングテーブル変更が常套手段ということであれ
ば、そのように認識を改めますので、アドバイスお願いします。
「ウィンドウの背景」の色を(白に)変えるならこちらが参考になりますね。
http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200302/03020162.txt
>コードを直接いじるのが大変なので、ストリングテーブルの変更で対処する
>のでしょうが、
ストリングテーブルをいじるコトで何が変わるのか、なぜストリングテーブルを
編集するのか、を考えれば、どこをどういじればいいか、答はおのずと見えてきます。
参考にされたホームページは「理屈抜き」「実戦」(実践?)という前提でお書きに
なってますので、それはそれでいいのでしょうが、応用力をつけようと思えば、必要
なのは抜かれた「理屈」です。
さて、かの作者は何をしたいと考えて、ストリングテーブルをいじったのでしょう?
・「ぼたん」という文字列を使いたいから? Non
・ストリングテーブルの使い方を教えたいから? 半分はNon
・Resource.h を直接編集するという説明を回避するため? Yes
ストリングテーブルをいじることで、あのページの作者が真にやりたかったのは、
#define IDC_BUTTON1 61204
#define IDC_BUTTON2 61205
の2文を Resource.h に追加するコトです。
ストリングテーブルの変更で対処するのがプログラマーから見て「邪道」に思えて
しまうなら、そうすることの「理屈」(理由)をまず考えなきゃ、批判だけで
終わるよ。
>ストリングテーブルをいじることで、あのページの作者が真にやりたかったのは、
>
>#define IDC_BUTTON1 61204
>#define IDC_BUTTON2 61205
>
>の2文を Resource.h に追加するコトです。
これをやる「正当」と言える方法もちゃんとありますよ。
メニューの[表示]-[シンボルブラウザ]を表示し、
[新規]で、シンボル名と他で使いそうも無い番号を割り当ててください。
NEG(ねぐ)さん回答有難うございます。
>「ウィンドウの背景」の色を(白に)変えるならこちらが参考になりますね。
> http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200302/03020162.txt
すみません。この回答者が私自身です。
Shimuraさん いつも回答ありがとうございます。
>ストリングテーブルの変更で対処するのがプログラマーから見て「邪道」に思えて
>しまうなら、そうすることの「理屈」(理由)をまず考えなきゃ、批判だけで
>終わるよ。
う~~ん??どうしても批判と言う風にとられてしまいますか?
私はまったく批判などしておりません。少なくとも大変すばらしいことを教えてくれた
作者さんには。私が言っているのは、あくまでも私の考えに合った別の方法を求めているだけで
す。
dairygoodsさん 有難うございます。
これですよこれ、求めていたものの答えの一つは、リソースを手書きで直すとVC++が機嫌を
損ねる事があるので。またまた勉強になりました。
<ここからは良い訳>
わたしはまったく素人のサンデープログラマーです。
昨年の11月からいったん断念したVC++の勉強を再開しました。
皆さんのアドバイスどおり、まずは「猫でも~」で勉強しました。
と言っても、コピペしてビルドしただけですが、でも何もしないよりは、はるかに勉強になった
と思います。
また、Resource.hは相当手書きして対応しました。
今回なじみの無いストリングテーブルに対しては、オリジナルのコードとストリングテーブルの
みをいじった場合のコードを比較しました。
(比較にあたってはネットからソフトをDLしました。便利なものが有るのですね。)
しかし、はじめて使ったので良く分からず、質問のほうに走ってしまいました。
横に聞ける人がいれば5分で分かることが、自力だと半日か掛かります。
勉強しているといろいろな疑問が沸いてきます。そして、それが解決できないと気になってしょ
うがありません。しかしながら、それにこだわるといくら時間が有っても足りません。
しばらく質問は控え、本やサイトで教えていただけることのみを素直に吸収していこうと思いま
す。
それでは、しばらくの間さようなら~~。
解決マーク忘れてました。
ついでに、雑談。
私は今日、会社をさぼりで休んで書いています。
回答をくれて方々は、会社で見ているのでしょうか?
多分仕事中にサボりで見ているのではなく、プロのプログラマーが
勉強のために見てるのでしょうね。
でわ~~。
MKさんにすごくすごく共感しました。
私は典型的なアマグラマです。
ただ、昔Z-80で作っていたような何かを再びWindows + C++で作れるようになれれば幸せだ
な、と思ってこのサイトで色々と馬鹿な質問を繰り返しています。
ただ、もう若くないので勉強してもすぐに忘れてしまいます。
どうぞ、さよなら~~ などと言わずに積極的に参加して下さい。
このように救われる人も多くいると思います。
小生も頑張りたいと思います。
>すみません。この回答者が私自身です。
それゆえに何故に?ってところでした。
>この方法が私にとってはなじみがなく、出来れば直接ボタンの絵を貼り付けたいと思
うのです
>が、可能なのでしょうか?
などなど、それが質問かと文章から読みました。
<クエスチョンここのみ。
「どうして、ストリングテーブルの変更するのでしょう?」
などという、明確な疑問が書かれてなかったので、私には読み取れませんでした。
(;_;)
「プログラマーから見ると」という表現には???を感じました。
やり方はいろいろあるので、どの手段をとってもいいのではないかと思います。
まあ、それぞれの機能、役割を認識して、(意図する?)目的にあった使い方をする
ようにしながら。
私は楽ができるよう、MFCにおんぶにだっこで、(提供者が意図する方法を?)うまく
活用したいと思っています。v(^_^)
NEG(ねぐ)さんへ いろいろご意見有難うございます。
まだ皆さんとまともな会話が出来るほでのレベルではないので、
言葉足らずや不明確な表現等有ると思いますのでお許しください。
今後ともお世話になることがあると思いますが、よろしくお願いいたします。
こちらこそよろしゅう~m(_ _)m