• <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>

            讓所有的靜態(tài)文本都透明好顯示背景色

            一、CStatic從文件夾加載位圖

            HBITMAP hbitmap;
            //獲得指向靜態(tài)控件的指針
            CStatic *pStatic=(CStatic *)GetDlgItem(IDC_SHOWBMP);
            //獲得位圖句柄
            HBITMAP Bitmap;
            //設(shè)置靜態(tài)控件的樣式,使其可以使用位圖,并試位標(biāo)顯示使居中
            pStatic->ModifyStyle(0xF,SS_BITMAP|SS_CENTERIMAGE);
            //設(shè)置靜態(tài)控件顯示位圖
            pStatic->SetBitmap(hBitmap);

            二、設(shè)置對話框背景(小圖可以漫延填充)

            1、把你的圖包含到程序的“Bitmap資源里,提示說該資源使用了大于256色的調(diào)色板,在VC里無法編輯等等,點(diǎn)確定就可以

            2定位到 void CXXXDlg::OnPaint(),在if()...else()中的else()下添加如下代碼
            else
            {
            //CDialog::OnPaint();//
            要禁止這個調(diào)用
            CPaintDC dc(this);
            CRect rect;
            GetClientRect(&rect);
            CDC dcMem;
            dcMem.CreateCompatibleDC(&dc);
            CBitmap bmpBackground;
            bmpBackground.LoadBitmap(IDB_BITMAP);
            //IDB_BITMAP
            是你自己的圖對應(yīng)的ID
            BITMAP bitmap;
            bmpBackground.GetBitmap(&bitmap);
            CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground);
            dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,
                    bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
            }

            三、CStatic控件透明

            可以這樣作的:
            HBRUSH CShutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
            {
            HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

            //讓所有的靜態(tài)文本都透明好顯示背景色
            if(nCtlColor   ==   CTLCOLOR_DLG)  
            {  
                    //返回對話框的顏色  
               hbr=(HBRUSH)::CreateSolidBrush(RGB(146,161,202));    
            }  
            if(nCtlColor==CTLCOLOR_STATIC)  
            {  
               //讓靜態(tài)文本框透明  
               pDC->SetBkMode(TRANSPARENT);  
               //pDC->SetTextColor(RGB(255,255,255));   //設(shè)置字體顏色白色  
               hbr=(HBRUSH)::GetStockObject(NULL_BRUSH);  
            }  
            if (nCtlColor==CTLCOLOR_EDIT)//設(shè)置EDIT控件的顏色
            {
               HBRUSH hbr1 = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
               hbr1=(HBRUSH)::CreateSolidBrush(RGB(0,0,0)); //背景黑色
               pDC->SetTextColor(RGB(255,255,255)); //文字白色
               pDC->SetBkMode(TRANSPARENT);  
               return hbr1;
            }
            return hbr;
            }

            四、CStatic背景透明后文本覆蓋的問題

            http://blog.vckbase.com/hatemath/archive/2005/08/04/10485.aspx


            posted on 2011-08-26 14:49 wrh 閱讀(2539) 評論(0)  編輯 收藏 引用


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


            導(dǎo)航

            <2008年4月>
            303112345
            6789101112
            13141516171819
            20212223242526
            27282930123
            45678910

            統(tǒng)計(jì)

            常用鏈接

            留言簿(19)

            隨筆檔案

            文章檔案

            收藏夾

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久精品黄AA片一区二区三区| 9191精品国产免费久久| 久久人人爽人人人人片av| 亚洲精品午夜国产VA久久成人 | 久久久久综合中文字幕| 97精品依人久久久大香线蕉97| 麻豆成人久久精品二区三区免费| 亚洲国产精品一区二区久久| 精品久久久久久久久免费影院 | 亚洲精品乱码久久久久久| 精品久久久久久久久久中文字幕| 久久精品一本到99热免费| 国产精品嫩草影院久久| 久久午夜无码鲁丝片| 中文字幕亚洲综合久久菠萝蜜| 久久99热国产这有精品| 伊人久久久AV老熟妇色| 久久国产三级无码一区二区| 国产精品久久久久影院色| 久久人与动人物a级毛片| 久久精品国产亚洲7777| 99久久精品无码一区二区毛片| 久久综合狠狠综合久久| 久久久久久综合网天天| 亚洲а∨天堂久久精品| 久久亚洲国产成人影院网站| 99精品久久久久久久婷婷| 国产91色综合久久免费分享| 亚洲狠狠婷婷综合久久久久| 久久丫忘忧草产品| 精品久久久中文字幕人妻| 亚洲人成无码久久电影网站| 伊人久久一区二区三区无码| 国内精品久久久久久久亚洲| 久久久久亚洲AV综合波多野结衣| 97久久精品人人做人人爽| 国产精品久久久久久久午夜片| 精品久久久久久无码人妻热| 久久er国产精品免费观看8| 国产成人99久久亚洲综合精品| 久久无码人妻精品一区二区三区 |