
No.2ベストアンサー
- 回答日時:
こんにちは。
まず、参考程度である事を前提といたします。フォントオブジェクトを生成しなければいけません。
CreateFont()及びCreateFontIndirect()で行います。
Bold表示とはフォントの太さを高めた物です。
調査・検討してみてください。
作成したフォントハンドルはデバイスコンテキストに指定します。
以下はディフォルトフォントを元に太いフォント(Bold)を作成する例です。
static HFONT CreateMyFont(int nBold)
{
//ディフォルトフォントをゲットする
HFONT hFontDef = (HFONT)GetStockObject(DEFAULT_GUI_FONT);
//フォントの詳細を受け取る構造体バッファ
LOGFONT lf;
//フォントハンドルから詳細を受け取る
GetObject(hFontDef, sizeof(lf), &lf);
//このメンバにフォントの太さを設定する
lf.lfWeight = nBold;
//フォントの作成
return CreateFontIndirect(&lf);
}
//何処かに前もって太いフォントハンドルを作成しておく
static HFONT s_hFontBold = CreateMyFont(FW_BOLD);
---------------------------------------------------------------
//以下はWM_DRAWITEMの中です
DRAWITEMSTRUCT* p = (DRAWITEMSTRUCT*)lParam;
//ListBox, ComboBoxの場合、itemIDのメンバは現在のアイテム行を示しています(ゼロベースです)。
//この処理は3行目のアイテムであった時
if(p->itemID == 2)
{
//オーナードロー用のデバイスコンテキストにフォントハンドルを設定 します(これで太い文字が反映される)
HFONT hFontOld = (HFONT)SelectObject(p->hDC, s_hFontBold);
//DrawText()などを使ってテキストを描写します
//終わったら以前のフォントに戻します
SelectObject(p->hDC, hFontOld);
}
---------------------------------------------------------------
No.1
- 回答日時:
こんにちは。
参考程度と言う事で。以下は、リストボックスの特定の行の高さを変更します。
WPARAM wParam = index; //設定変更したい行
LPARAM lParam = MAKELPARAM(cyItem, 0); // アイテムの高さを指定する
//これを呼ぶ
::SendMessage(hwndListBox, LB_SETITEMHEIGHT, wParam, lParam);
関数からの操作では上記位しか出来ないようです。
特定行の色彩を変えたり、フォントスタイルを孤立させたい場合、オーナードローを処理するしかなさそうです。
結論はリストボックスでも可能なはずです。
WM_MEASUREITEM並びにWM_DRAWITEMのメッセージ処理を検索・検討して見てください。
この回答へのお礼
お礼日時:2008/07/10 16:35
ありがとうございます。
質問をした後も調査を続け、
オーナードローで描画をするところまではできました。
背景色の変更、
テキスト色の変更はできたのですが
Bold 表示の設定の仕方が分かりません。
もしお分かりでしたら教えてください。
宜しくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB.NET2005 TextBox 高さ(Heig...
-
VBAのフォント変更(エクセルか...
-
コンボボックス内の文字サイズ変更
-
static 文字が上に張り付いて・...
-
コンボボックスの一部のアイテ...
-
ドロップダウンリストのフォン...
-
Smart Art挿入時のフォントサイ...
-
[VC]リストビューで等幅フォント
-
リストビューのハンドルについて
-
EDITBOXに関して
-
文字色 エクリプス
-
VC++2010 ボタンなどのレイアウ...
-
エディットボックスのフォント...
-
GetTextExtentPoint32での高さ
-
D3DXCreateFontとID3DXFont::Dr...
-
英語OSで日本語アプリのダイア...
-
行き詰まりましたυ
-
リソースエディタでスタティッ...
-
ゲームのフォントの変更
-
Msgboxで使用するフォントの指...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コンボボックス内の文字サイズ変更
-
VB.NET2005 TextBox 高さ(Heig...
-
VBAのフォント変更(エクセルか...
-
ドロップダウンリストのフォン...
-
エディットボックスのフォント...
-
コンボボックスの一部のアイテ...
-
リソースエディタでスタティッ...
-
文字色 エクリプス
-
プロポーショナルフォントの文...
-
static 文字が上に張り付いて・...
-
D3DXCreateFontとID3DXFont::Dr...
-
JakaraPOI セル内部のフォント...
-
PCによって変わってしまう画面...
-
Eclipseで修正したファイル名の...
-
Macbook Word フォント色変更で...
-
フォントの大きさ
-
VBにて指定した通りにExcelの列...
-
リストコンロールの一行だけを...
-
VBA TEXTBOXテキストボックスの...
-
枠内に文字列をぴったり収めるには
おすすめ情報