VC++でプログラミングしています。
MFCのダイアログベースのEXEを造っています。
ダイアログにはボタンとエディットボックスを貼り付けています。
私がやりたいのは以下のことです。
・ボタンの色を設定したい
・ボタン、エディットボックスに表示する文字の色を設定したい
・ボタン、エディットボックスに表示する文字のフォント(サイズ)を設定したい
プロパティでサイズ変更すると全体に反映されてしまうので、個々の
コントロールについて制御したいと思っています。
ヘルプで調べて、それらしい関数を見つけるのですが使い方がわかりません。
VCを始めたばかりで、クラスの理解がまだ浅いです。。。
関数の説明は理解できても、「じゃあ、コードはどう書くの?」という状態です。
「○○ は ×× のメンバではありません」と、よく怒られてます。。。
識者の方、ご教授願います。
コードがどうなるのか知りたいので、簡単なサンプルコードがあると助かります。
また、質問ではないのですが、「この関数は○○をする」というのではなく、
「○○をするにはこの関数を使う」という様に調べられる、お勧めの書籍、
Webなどがありましたら教えてください。
今後の勉強に役立てたいと思っています。
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」と入れて検索してみてください。
すると、「返送メッセージの処理 : 再利用可能なコントロールの例」というところにサンプルソースが載っています。
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 *」と
キャストしている部分はどうなるのでしょうか。
いろいろとお手数おかけしますが、よろしくお願い致します。
お探しの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も見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
画面を強制的に再描画させる方法
C言語・C++・C#
-
リソースエディタでスタティックテキストの文字サイズの変更
C言語・C++・C#
-
CStringの文字列検索&抜き出しについて
C言語・C++・C#
-
-
4
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
5
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
6
ダイアログ表示時にチェックボックスにチェックされている状態にするには?
C言語・C++・C#
-
7
ダイアログ内コントロールの位置取得について
C言語・C++・C#
-
8
VC++でコントロールの境界線を描画する方法
C言語・C++・C#
-
9
UpdateData( FALSE); による文字列データの表示更新(VC++6.0)
C言語・C++・C#
-
10
エディットボックスの入力制限について
C言語・C++・C#
-
11
charからLPTSTRへの変換方法
C言語・C++・C#
-
12
CFileDialogの最初のディレクトリ設定
C言語・C++・C#
-
13
MFCでOnPaintのタイミング
C言語・C++・C#
-
14
コンボボックスのドロップダウンリストが表示されない
C言語・C++・C#
-
15
ボタン上にビットマップ、アイコンを貼り付ける方法
C言語・C++・C#
-
16
ボタンの配置を変更したい
C言語・C++・C#
-
17
コンボボックス表示文字列を取得する場合
C言語・C++・C#
-
18
ボタンの状態
C言語・C++・C#
-
19
std::stringからLPCWSTR型への変換
C言語・C++・C#
-
20
VC++スレッドの正しい終了のさせかた
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ボタンの表示の色、フォントを...
-
メッセージボックスを大きくす...
-
ダイアログボックスで指定した...
-
confirmダイアログの表示文字に...
-
フォーム上のリストボックスに...
-
メッセージボックスのボタン文...
-
VC++ MFC エラーコード C2248 ...
-
ダイアログのボタンが押せない
-
モードレスダイアログのキー入...
-
'int' から 'LPCSTR' に変換で...
-
CButtonのBMP・アイコンの表示...
-
vbscriptで、ファイル選択ダイ...
-
C# ボタンコントロール内で文字...
-
ダイアログの上のテキストボッ...
-
コンボボックスのドロップダウ...
-
エディットコントロールの色の...
-
ダイアログにプレビュー表示
-
アイコンをボタンに貼り付け
-
MFCダイアログボックスを最前面...
-
ダイアログ間のメッセージの送...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスを大きくす...
-
ボタンの表示の色、フォントを...
-
コンボボックスのドロップダウ...
-
ボタンの配置を変更したい
-
'int' から 'LPCSTR' に変換で...
-
ダイアログの上のテキストボッ...
-
リソースファイルとは・・・
-
C# ボタンコントロール内で文字...
-
vbscriptで、ファイル選択ダイ...
-
メッセージボックスのボタン文...
-
ダイアログの表示位置の保存
-
MFC ポップアップメニューのチ...
-
MFCダイアログボックスを最前面...
-
ダイアログボックスで指定した...
-
ダイアログにプレビュー表示
-
フォーム上のリストボックスに...
-
confirmダイアログの表示文字に...
-
VC++ MFC エラーコード C2248 ...
-
ダイアログのボタンが押された...
-
CButtonのBMP・アイコンの表示...
おすすめ情報