• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            VC6.0中如何改變對(duì)話框的背景顏色

            ---- 方法一:調(diào)用CWinApp類的成員函數(shù)SetDialogBkColor來實(shí)現(xiàn)。
            ---- 其中函數(shù)的第一個(gè)參數(shù)指定了背景顏色,第二個(gè)參數(shù)指定了文本顏色。下面的例子是將應(yīng)用程序?qū)υ捒蛟O(shè)置為藍(lán)色背景和紅色文本,步驟如下:
            ---- ① 新建一個(gè)基于Dialog的MFC AppWizard應(yīng)用程序ExampleDlg。
            ---- ② 在CExampleDlgApp ::InitInstance()中添加如下代碼:
            BOOL CExampleDlgApp: : InitInstance ( )
            {
            ...
                CExampleDlgDlg dlg;
                m_pMainWnd = &dlg;
            //先于DoModal()調(diào)用,將對(duì)話框設(shè)置為藍(lán)色背景、紅色文本
                SetDialogBkColor(RGB(0,0,255),RGB(255,0,0));
                int nResponse = dlg.DoModal();
            ...
            }
            ---- 編譯并運(yùn)行,此時(shí)對(duì)話框的背景色和文本色已發(fā)生了改變。值得注意的是:在調(diào)用DoModal()之前必須先調(diào)用SetDialogBkColor,且此方法是將改變應(yīng)用程序中所有的對(duì)話框顏色,并不能針對(duì)某一個(gè)指定的對(duì)話框。
            ---- 方法二:重載OnPaint(),即WM_PAINT消息。有關(guān)代碼如下(以上例工程為準(zhǔn)):
            void CExampleDlgDlg::OnPaint()
            {
                if (IsIconic())
            ...
              else
              {
                    CRect rect;
                    CPaintDC dc(this);
                    GetClientRect(rect);
                    dc.FillSolidRect(rect,RGB(0,255,0));  //設(shè)置為綠色背景
                    CDialog::OnPaint();
              }
            ---- 方法三:重載OnCtlColor (CDC* pDC, CWnd* pWnd, UINT nCtlColor),即WM_CTLCOLOR消息。具體步驟如下(以上例工程為準(zhǔn)):
            ---- ①在CExampleDlgDlg的頭文件中,添加一CBrush的成員變量:
            class CExampleDlgDlg : public CDialog
            {
            ...
            protected:
            CBrush m_brush;
            ...
            };
            ---- ②在OnInitDialog()函數(shù)中添加如下代碼:
            BOOL CExampleDlgDlg::OnInitDialog()
            {
            ...
            // TODO: Add extra initialization here
            m_brush.CreateSolidBrush(RGB(0, 255, 0)); // 生成一綠色刷子
            ...
            }
            ---- ③利用ClassWizard重載OnCtlColor(...),即WM_CTLCOLOR消息:
            HBRUSH CExampleDlgDlg::OnCtlColor
            (CDC* pDC, CWnd* pWnd, UINT nCtlColor)
            {
            /*
            ** 這里不必編寫任何代碼!
            **下行代碼要注釋掉
            ** HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
            */
            return m_brush;  //返加綠色刷子
            }
            ---- 方法四:還是重載OnCtlColor (CDC* pDC, CWnd* pWnd, UINT nCtlColor),即WM_CTLCOLOR消息。具體步驟如下(以上例工程為準(zhǔn)):
            ---- 步驟①、②同上方法三中的步驟①、②。
            ---- 步驟③利用ClassWizard重載OnCtlColor(...)(即WM_CTLCOLOR消息)時(shí)則有些不同:
            HBRUSH CExampleDlgDlg::OnCtlColor
            (CDC* pDC, CWnd* pWnd, UINT nCtlColor)
            {
            HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
            //在這加一條是否為對(duì)話框的判斷語(yǔ)句
            if(nCtlColor ==CTLCOLOR_DLG)
            return m_brush;  //返加綠色刷子
            return hbr;
            }
            ---- 編譯并運(yùn)行即可。

            posted on 2008-11-05 16:01 wrh 閱讀(1687) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            導(dǎo)航

            <2010年10月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統(tǒng)計(jì)

            常用鏈接

            留言簿(19)

            隨筆檔案

            文章檔案

            收藏夾

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            婷婷伊人久久大香线蕉AV| 久久精品国产一区二区三区| 亚洲人成精品久久久久| 中文字幕乱码久久午夜| 91精品国产综合久久四虎久久无码一级 | 日本精品久久久久久久久免费| 综合久久给合久久狠狠狠97色 | 久久久久久久91精品免费观看| 中文字幕乱码久久午夜| 精品国产一区二区三区久久久狼 | 欧美精品国产综合久久| 精品国际久久久久999波多野| 久久国产V一级毛多内射| 久久精品中文闷骚内射| 国产一区二区久久久| 亚洲国产精品久久久久久| 婷婷五月深深久久精品| 亚洲精品WWW久久久久久| 99久久免费国产精精品| 2021国内久久精品| 久久婷婷五月综合97色直播| 久久久久中文字幕| 久久久久亚洲av无码专区喷水| 亚洲精品无码久久久久AV麻豆| 国产高潮国产高潮久久久91| 99久久人妻无码精品系列蜜桃| 中文字幕久久久久人妻| 要久久爱在线免费观看| 久久婷婷人人澡人人| 久久久久国产一区二区| 国产精品青草久久久久福利99| 久久97精品久久久久久久不卡| 99久久夜色精品国产网站| 久久无码中文字幕东京热| 亚洲欧美成人久久综合中文网 | 久久丝袜精品中文字幕| 精品久久久久一区二区三区 | 亚洲中文字幕无码久久精品1 | 久久青青草原精品国产不卡 | 日本强好片久久久久久AAA| 无码国内精品久久人妻|