以下の方法でWindows7で動作させたところ、
描画されませんでした。。。(XPはOKです。)
何かOSで仕様が違うのでしょうか???
http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200707/07070014.txt
//ヘッダファイル
CBrush m_brEditM0; // エディットボックスの背景色ブラシ(追加)
#define EDITBOX_COLOR_M0 RGB(0,0,255)
//コンストラクタ
m_brEditM0.CreateSolidBrush( EDITBOX_COLOR_M0 ); // 背景
//デストラクタ
m_brEditM0.DeleteObject(); // 背景
HBRUSH C*****Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
switch(nCtlColor){
case CTLCOLOR_STATIC:
if ( pWnd->GetDlgCtrlID() == IDC_EDIT_Coloer_M0 ) {
//pDC->SetBkMode(OPAQUE);
//pDC->SetBkMode(TRANSPARENT);
pDC->SetBkColor( EDITBOX_COLOR_M0 );
return (HBRUSH) m_brEditM0;
}
}
return hbr;
}
>以下の方法でWindows7で動作させたところ、
>描画されませんでした。。。(XPはOKです。)
>何かOSで仕様が違うのでしょうか???
ビジュアルスタイルではこちらの方法ではうまくいかないと思われますが…その辺りはど
うなっていますか?
# Windows7の導入はまだなので確認できませんけど。
コメント有難うございます。
>ビジュアルスタイルではこちらの方法ではうまくいかないと思われますが…
>その辺りはどうなっていますか?
全く知らなかった情報なのですが、
エアロ等を使っているためか分かりませんが、
Windows7でのAPI、MFCの仕様が変わっているという事ですか?
> エアロ等を使っているためか分かりませんが、
> Windows7でのAPI、MFCの仕様が変わっているという事ですか?
VC2010を使っていますか?
エアロ等に関係なく、エディットボックスの色等、細かな点はOSとVCのバージョンが
あってないとまずいですね。
コメント有難うございます。
>VC2010を使っていますか?
>エアロ等に関係なく、エディットボックスの色等、細かな点はOSとVCのバージョンが
>あってないとまずいですね。
いえ、VC2005です。
そうだったんですか。。。
てっきりMicrosoftの事なので下位互換は
それなりに対応してくれてるかと思いました。
その辺の仕様を調べてみます。
ありがとうございます。