
VC++でプログラミングしています。
MFCのダイアログベースのEXEを造っています。
ダイアログにはボタンとエディットボックスを貼り付けています。
私がやりたいのは以下のことです。
・ボタンの色を設定したい
・ボタン、エディットボックスに表示する文字の色を設定したい
・ボタン、エディットボックスに表示する文字のフォント(サイズ)を設定したい
プロパティでサイズ変更すると全体に反映されてしまうので、個々の
コントロールについて制御したいと思っています。
ヘルプで調べて、それらしい関数を見つけるのですが使い方がわかりません。
VCを始めたばかりで、クラスの理解がまだ浅いです。。。
関数の説明は理解できても、「じゃあ、コードはどう書くの?」という状態です。
「○○ は ×× のメンバではありません」と、よく怒られてます。。。
識者の方、ご教授願います。
コードがどうなるのか知りたいので、簡単なサンプルコードがあると助かります。
また、質問ではないのですが、「この関数は○○をする」というのではなく、
「○○をするにはこの関数を使う」という様に調べられる、お勧めの書籍、
Webなどがありましたら教えてください。
今後の勉強に役立てたいと思っています。
No.1ベストアンサー
- 回答日時:
下2つについては以下でいけると思います。
class CMyDlg : CDialog
{
public:
CFont m_cFont; //Dlgクラスのメンバとして用意
/*
他のメンバ
*/
virtual BOOL OnInitDialog(); //初期化
};
BOOL CMyDlg::OnInitDialog()
{
//TODO:ここでFontを設定しておく(文字の色、サイズなど)
//Fontを設定
((CButton *)GetDlgItem(IDC_BUTTON))->SetFont(&m_cFont,TRUE);
//TODO:その他の初期化
return TRUE;
}
//見易さのために、全角スペースを使っています;;
一番上はBitmapを貼り付けるか、CWndのメンバ関数を使って
塗りつぶすかどうかだと思います。
MFCではなく、C++Builderのページなのですが、少しいじればMFCでも使えるので、参考URLに示しておきます。
参考URL:http://market.agr.tottori-u.ac.jp/ken/tech.html
この回答への補足
回答ありがとうございます。
フォント設定では以下のようなコードにしてみました。
m_cFont.CreateFont(40, 0, 0, 0, FW_HEAVY, 0, 0, 0, ANSI_CHARSET,
OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,
DEFAULT_QUALITY, DEFAULT_PITCH, NULL);
これで、ボタンに表示する文字のサイズは変更できました。
何か使い方が違うとか、フォント設定には別の関数があるよ、などの
指摘があればアドバイスをお願いします。
また、この関数には色の設定はありませんでした。
色の設定の関数を知っていれば教えていただけないでしょうか。
#探したんですけど、「これだ!!」というのが見つかりませんでした。。。
あと、エディットボックスの文字のフォントを変更する場合、「CButton *」と
キャストしている部分はどうなるのでしょうか。
いろいろとお手数おかけしますが、よろしくお願い致します。
No.3
- 回答日時:
MFCなら
----メンバ変数----------
CFont m_pFont;
CButton m_Button1;//ダイアログデータ
-----------------------
-------------プログラム-------------------
void CHogeDlg::SetMyFont(){
m_pFont = new CFont;
m_pFont->CreatePointFont(1000,"MS 明朝");
m_Button1.SetFont(m_pFont);
}
------------------------------------------
とやれば、比較的簡単にフォントの変更ができますよ。
No.2
- 回答日時:
MSDNライブラリ(VisualStudio付属)で「CYellowEdit」と入れて検索してみてください。
すると、「返送メッセージの処理 : 再利用可能なコントロールの例」というところにサンプルソースが載っています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロでボタンにつける名前がどこに設定されているかわからないケースがありました。 1 2023/06/19 19:37
- HTML・CSS 検索窓とcssハックについて 3 2022/04/22 12:21
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- その他(インターネット接続・インフラ) Webサイトのフォント・級数変更について 1 2022/10/18 18:08
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- Visual Basic(VBA) VBAで早押しゲームを作りたい 4 2022/05/12 13:46
- その他(データベース) Q&Aフォームを作成したいのですが、どう設計してよいか分かりません、アドバイスお願い致します。 1 2023/07/27 19:04
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- SSL・HTTPS シャープのチャンネル設定 2 2022/10/12 21:42
- デジタルカメラ sony a7ii と 富士フイルムX-T2について 【sony a7ii】 数値変動・動画ボタンの 1 2023/03/21 01:14
このQ&Aを見た人はこんなQ&Aも見ています
-
エディットボックスのフォントを変えたい
C言語・C++・C#
-
リソースエディタでスタティックテキストの文字サイズの変更
C言語・C++・C#
-
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
-
4
エディットコントロールの色の変更方法
C言語・C++・C#
-
5
CString から LPCTSTRの型に変換
C言語・C++・C#
-
6
画面を強制的に再描画させる方法
C言語・C++・C#
-
7
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
8
VC++2010 ボタンなどのレイアウト大きさ変更
C言語・C++・C#
-
9
MFCでOnPaintのタイミング
C言語・C++・C#
-
10
CStringをwchar_tに変換したい
C言語・C++・C#
-
11
ダイアログ表示時にチェックボックスにチェックされている状態にするには?
C言語・C++・C#
-
12
ラベル(スタティックテキスト)内での改行。
C言語・C++・C#
-
13
ビジュアルC++でボタンの有効/無効
C言語・C++・C#
-
14
ボタンの配置を変更したい
C言語・C++・C#
-
15
VC++にてボタン等のサイズ取得
C言語・C++・C#
-
16
CStringの文字列検索&抜き出しについて
C言語・C++・C#
-
17
ボタンのオーナードローについて
C言語・C++・C#
-
18
ダイアログの上のテキストボックスの、初期値を設定する方法が分かりません・・・・
C言語・C++・C#
-
19
ダイアログ内コントロールの位置取得について
C言語・C++・C#
-
20
MFC ダイアログ上のID取得について
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Debugモードが選択できません
-
メッセージボックスのサイズに...
-
ダイアログと変数
-
VC++.NET DLLからのダイアログ...
-
Visual C++のダイアログ編集画...
-
メッセージボックスを大きくす...
-
javascriptのconfirmについて
-
見た目にもこだわるGUIツール制作
-
vbscriptで、ファイル選択ダイ...
-
処理に適したユーザーインター...
-
SDKについて…新規ウィンドウ
-
グラフの交点の求め方(Excel)
-
Minecraft 統合版(PC)の描画距...
-
コントロールの書式設定で、“コ...
-
エクセルで作った新しいウイン...
-
WINAPI 他のウインドウを重ね...
-
pygameで画像を描画する方法を...
-
TreeView表示がおかしいです。
-
リッチテキストのフォント
-
表示する方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ボタンの表示の色、フォントを...
-
C# ボタンコントロール内で文字...
-
メッセージボックスを大きくす...
-
フォーム上のリストボックスに...
-
リソースファイルとは・・・
-
ダイアログの上のテキストボッ...
-
MFCダイアログボックスを最前面...
-
メッセージボックスのボタン文...
-
コンボボックスのドロップダウ...
-
ボタンの配置を変更したい
-
ダイアログボックスで指定した...
-
'int' から 'LPCSTR' に変換で...
-
ダイアログのボタンが押された...
-
ダイアログ最前面表示時の後ろ...
-
ダイアログの表示位置の保存
-
confirmダイアログの表示文字に...
-
ダイアログ間のメッセージの送...
-
エディットコントロールの色の...
-
MFC ポップアップメニューのチ...
-
vbscriptで、ファイル選択ダイ...
おすすめ情報