OnPaintを呼び出すと全て自前で描画しないといけない?


はずみ  2009-06-23 19:09:04  No: 70443  IP: [192.*.*.*]

OnPaintについて質問があります。

例えば
CEdit txt;
txt = GetDlgItem(ID_TEXT);
txt.SetWindowText("sample");

として、文字列 "sample" を表示しますが

OnPaintを呼び、
DrowText でテキストの一部分だけに文字を描くと
エディットボックス全体が灰色になってしまいます。
* DrowTextで設定した文字は表示されます。
    void CEditTest::OnPaint() 
    {
        CPaintDC dc(this); // 描画用のデバイス コンテキスト
        CRect r;
        r.top = 0;
        r.left = 0;
        r.right = 10;
        r.bottom = 10;
        dc.DrawText("a", &r, DT_LEFT);
    }


txt.SetWindowText("sample");
で設定した、"sample" を表示する方法はないのでしょうか?


# OnPaintを呼び出すと全て自前で描画しないといけないのでしょうか?


環境:VC++6

以上、よろしくお願いします。

編集 削除
wclrp ( 'o')  2009-06-23 21:40:31  No: 70444  IP: [192.*.*.*]

そうだ。そうだ。そうだ。

編集 削除