dポイントプレゼントキャンペーン実施中!

こんにちは。
MFCでプログラムをしています。
コンボボックスを配置したのですが、高さを他のテキストボックス等を
合わせたいと思うのですがうまくいきません。

CComboBox::SetItemHeightでアイテムの高さを変更することで、コンボ
ボックスの高さも変更されることは分かりました。

逆にコンボボックスのコントロールの高さが指定の高さになるように、
アイテムの高さを求めることはできないのでしょうか?

もし解決方法がありましたら教えていただけないでしょうか。

A 回答 (1件)

 こんばんは。



 コンボボックスの高さから、アイテムの高さを引けば、枠淵の差額が出せるので、此れを利用するのが良さそうです。
 スクリーンショットを取って、MSペイントで高さを測ってみましたが、一応狙い道理の高さ調整が出来ました。
 以下参考程度に。

//コンボボックスの矩形を求める
RECT wrc = {0};
pComboBox->GetWindowRect(&wrc);

//コンボボックスの高さと、アイテムの高さの差を取る
const int blank = (wrc.bottom - wrc.top) - pComboBox->GetItemHeight(-1);

//コンボボックスの高さを64で調整
pComboBox->SetItemHeight(-1, 64 - blank);
    • good
    • 0
この回答へのお礼

なるほど。アイテムの高さから逆算して、それからアイテムの高さを再計算するんですね。
この方法でうまく行きました。これは思いつきませんでした。
ありがとうございました。

お礼日時:2009/10/05 15:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A