
No.1ベストアンサー
- 回答日時:
数多くの引数を持つか、巨大な構造体を引数に持つかの違いですよね。
好みでいいんじゃないんですか?
個人的にはCreateFontIndirectを使ってますが、CreateFontを使うときもありますし。
GetObjectでフォント情報を取得したときはCreateFontIndirectになりますけど。
#ちなみに、削除の順番は、
1.Create
2.WM_SETFONT
3.前回コールされたときのフォントを削除
ですよ。セットしたばかりのフォントを削除するのではありません。
ありがとうございます。
前回の件で1つのフォントハンドルですまそうとするとどうしてもクリエイト前にデリートして瞬間的にフォントが設定されていない状態がでてきました。
2つの変数を使って以下のようにすべきですね。
1つの変数では扱いが難しいですね?
#include <windows.h>
HWNDhB;
LONG WINAPI WinProcedure(HWND hW,UINT wM,UINT wP,LONG lP)
{
RECTrt;
intW,H;
HFONThFx;
staticHFONThF;
switch(wM)
{
case WM_COMMAND:
SetFocus(hW);return 0;
case WM_SIZE:
GetClientRect(hW,&rt);
W=rt.right-rt.left;H=rt.bottom-rt.top;
hFx=CreateFont(H/4,W/4,0,0,FW_NORMAL,FALSE,FALSE,FALSE,SHIFTJIS_CHARSET,OUT_TT_ONLY_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FIXED_PITCH|FF_MODERN,"MS Pゴシック");
SendMessage(hB,WM_SETFONT,(WPARAM)hFx,1);
if(hF!=0)DeleteObject(hF);
hF=hFx;
MoveWindow(hB,W/4,H/4,W/2,H/2,1);
return 0;
case WM_DESTROY:
DeleteObject(hF);
PostQuitMessage(0);
return 0;
default:return(DefWindowProc(hW,wM,wP,lP));
}
}
WINAPI WinMain(HINSTANCE hI,HINSTANCE,LPSTR,int)
{
WNDCLASSwc;
HWNDhW;
MSGms;
wc.lpszClassName="I";
wc.lpfnWndProc=(WNDPROC)WinProcedure;
wc.hInstance=hI;
wc.style=CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hIcon=0;
wc.hCursor=LoadCursor(0,IDC_ARROW);
wc.hbrBackground=HBRUSH(COLOR_WINDOW+1);
wc.lpszMenuName=0;
RegisterClass(&wc);
hW=CreateWindow("I","親",WS_OVERLAPPEDWINDOW,0,0,99,99,0,0,hI,0);
hB=CreateWindow("BUTTON","子",WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,0,0,0,0,hW,0,hI,0);
ShowWindow(hW,SW_SHOW);
UpdateWindow(hW);
while(GetMessage(&ms,0,0,0))
{
TranslateMessage(&ms);
DispatchMessage(&ms);
}
return (ms.wParam);
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
outlook 文字を揃えたい。tab...
-
マイクロ(μ)の文字を半角で出...
-
教えてください。
-
外国語版メイリオはある?
-
英語版OSでの遊明朝、游ゴシック
-
C# Font GdiCharSet
-
ワードでゴシックの文字を太く...
-
MsgBoxについて
-
VB6 LISTVIEWで項目の色分...
-
latex文書でのURLの表示
-
Excel:一部のフォントでセルの...
-
似ているフォント(Win⇔Mac)
-
Outlook Expressのツールバー
-
メールで、榊の文字を木辺に神...
-
font-family の記載方法
-
フォントダイアログを開くいた...
-
WORD全角入力しても半角に...
-
WinとMacのフォントサイズの違い
-
「MS Pゴシック」と同じ幅の...
-
Eclipseで文字がずれます。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
outlook 文字を揃えたい。tab...
-
マイクロ(μ)の文字を半角で出...
-
教えてください。
-
似ているフォント(Win⇔Mac)
-
「MS Pゴシック」と同じ幅の...
-
Excel:一部のフォントでセルの...
-
MsgBoxについて
-
英語版OSでの遊明朝、游ゴシック
-
ワードでゴシックの文字を太く...
-
逆向き/(スラッシュ)の入力方法
-
gvimでフォント、色テーマ設定...
-
C# Font GdiCharSet
-
WORD全角入力しても半角に...
-
font-family の記載方法
-
WORD VBAでハイパーリ...
-
縦書きテキストボックスの表示"...
-
メールで、榊の文字を木辺に神...
-
コマンドプロンプト(cmd.exe)を...
-
PreRenderイベントの実装方法に...
-
無料で使える日本語フォントを...
おすすめ情報