<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                在VC++ MFC編程中,我們常使用Picture Control圖片控件來顯示圖像。下面簡單歸納幾種顯示不同的方式: (實例可在我的CSDN資源中下載:[http://download.csdn.net/detail/margin1988/8341525](http://download.csdn.net/detail/margin1988/8341525)) **第一種、資源位圖方式顯示BMP圖片** 如果要顯示的是一張BMP位圖,則可以采用資源位圖方式,具體步驟如下: (1)將BMP文件拷貝到工程的res目錄下; (2)在對話框中添加一個Picture Control控件,例如:ID為IDC_STATIC1,Type設為Bitmap; (3)在工程的資源視圖下,右鍵“添加資源”,現在資源類型Bitmap,然后“導入”(1)中的文件,例如:導入后資源的ID為IDB_BITMAP1; ![](https://box.kancloud.cn/2016-08-31_57c6b4a8ad1bc.jpg) (4)為IDC_STATIC1?Picture Control控件添加Control類型變量,例如:CStatic m_resbmp; (5)在此控件上顯示來自資源中的BMP位圖IDB_BITMAP1,代碼如下: ~~~ HBITMAP hBitmap; // 顯示資源中的圖像(僅限位圖BMP) hBitmap =(HBITMAP)LoadImage(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_BITMAP1), IMAGE_BITMAP,0,0, LR_LOADMAP3DCOLORS); m_resbmp.SetBitmap(hBitmap); ~~~ **第二種、文件位圖方式顯示BMP圖片** 如果要顯示的是一張BMP位圖,也可以采用文件位圖的方式,具體步驟如下: (1)將BMP文件拷貝到工程的可執行文件目錄下(如:Debug目錄,beixin.bmp文件); (2)在程序中獲取可執行文件目錄的全路徑,代碼如下: ~~~ CString exepath;//exe路徑 char filepath[256]; char *pPath; GetModuleFileName(AfxGetInstanceHandle(),filepath,256); pPath = strrchr(filepath,'\\'); *pPath = 0; exepath = filepath; ~~~ (3)在對話框中添加一個Picture Control控件,例如:ID為IDC_STATIC2,Type設為Bitmap; (4)為IDC_STATIC2?Picture Control控件添加Control類型變量,例如:CStatic m_filebmp; (5)在此控件上顯示來自文件的BMP位圖beixin.bmp,代碼如下: ~~~ // 顯示文件中的圖像(僅限位圖BMP) HBITMAP hBitmap; CString filebmppath; filebmppath.Format("%s\\beixin.bmp",exepath);//位圖文件全路徑 hBitmap = (HBITMAP)LoadImage(AfxGetInstanceHandle(),_T(filebmppath),IMAGE_BITMAP,0,0,LR_LOADFROMFILE); m_filebmp.SetBitmap(hBitmap); ~~~ **第三種、文件圖片方式顯示JPG\PNG\BMP等圖片** 如果要顯示的是一種JPG圖片、PNG圖片或者BMP圖片(亦可)等其他格式的靜態圖片,則可使用文件圖片的方式,步驟如下: (1)將圖片文件拷貝到工程的可執行文件目錄下(如:Debug目錄,shoutao.jpg\shoutao.png\shoutao.bmp文件); (2)在程序中獲取可執行文件目錄的全路徑,同上(第二種(2)); (3)在對話框中添加一個Picture Control控件,例如:ID為IDC_STATIC3,Type設為Frame; (4)為IDC_STATIC3?Picture Control控件添加Control類型變量,例如:CStatic?m_fileimg; (5)在此控件上顯示來自文件的JPG\PNG\BMP圖片shoutao.jpg\shoutao.png\shoutao.bmp,代碼如下: ~~~ //.h文件中 CFileFind finder; void showimg(char* imgpath);//顯示不同格式圖片的函數 //.cpp文件中 void CPoint34Dlg::showimg(char* imgpath) { // 顯示文件中的圖像(不限圖像格式) if (finder.FindFile(imgpath)) { CRect rect; m_fileimg.GetClientRect(&rect); CImage img; img.Load(imgpath); CDC* pDC = m_fileimg.GetWindowDC(); img.Draw(pDC->GetSafeHdc(),rect); ReleaseDC(pDC); } } ~~~ ~~~ //.h文件中 CString fileimgpath; //.cpp文件中,調用圖片顯示函數 srand((unsigned)time(NULL)); int rd = rand()%3; switch (rd) { case 0: fileimgpath.Format("%s\\shoutao.bmp",exepath); break; case 1: fileimgpath.Format("%s\\shoutao.png",exepath); break; case 2: fileimgpath.Format("%s\\shoutao.jpg",exepath); break; } showimg(fileimgpath.GetBuffer());//調用 ~~~ (6)這種在Picture Control控件中顯示圖片的方式,千萬不要忘記在對話框的OnPaint()中添加窗口更新、重繪圖像,否則,被對話框最小化或被遮擋后,圖像不能正常顯示,在OnPaint()中添加代碼如下: ~~~ CDialog::OnPaint(); //對話框被最小化或被遮擋后,圖像不能正常顯示,需要更新、重繪窗口 UpdateWindow(); showimg(fileimgpath.GetBuffer()); ~~~ 效果圖如下: ![](https://box.kancloud.cn/2016-08-31_57c6b4a8da4ac.jpg)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看