使用GDI+ 儲存HDC為位元影像檔案

//GDI+為圖片的載入、儲存,屏蔽了內部編解碼、壓縮解壓縮等的具體細節,給程式員帶來了極大的方便//目前版本的GDI+支援bmp jpeg gif tiff png等幾種格式//下面的程式基本思路是先將目標DC上的內容存到記憶體BITMAP//再使用GDI+Bitmap::FromHBITMAP載入記憶體位元影像,並儲存成檔案//此版本在Win32和MFC環境下測試通過////使用GDI+ 儲存HDC為位元影像檔案#include <rpc.h>#include

DirectSound 播放自訂採集的資料

#pragma once #include <stdio.h>#include <stdlib.h>#include <math.h>#include <limits.h>#include <mmsystem.h>#include <mmreg.h>#include <msacm.h>#include <dsound.h>#pragma comment(lib, "dsound")#pragma

使用CRgn::CombineRgn判斷兩個地區是否有共同的覆蓋地區

BOOL CheckAreaOverlap(POINT *ptArray1, const int ptNum1, //地區1座標點 座標點數量 POINT *ptArray2, const int ptNum2) //地區2座標點 座標點數量{ CRgn rgn1, rgn2; if(rgn1.CreatePolygonRgn(ptArray1, ptNum1, WINDING) &&

API使指定視窗全屏/恢複全屏

BOOL FullScreenViewCtrl(HWND m_hWnd, //想要全屏的視窗控制代碼 BOOL bFullScreen) //TURE進入全屏 FALSE退出全屏{ static HWND pParentWndSave = NULL; //父視窗控制代碼 static DWORD dwWindowStyleSave = 0; //視窗風格 static RECT rcWndRectSave = {0, 0, 0, 0};

CListCtrl 報表模式下修改頭字元

m_ListCtrl.InsertColumn(0, _T("ABCD")); m_ListCtrl.InsertColumn(1, _T("CDEF")); m_ListCtrl.InsertItem(0, _T("00"), 0); m_ListCtrl.InsertItem(1, _T("10"), 0); CHeaderCtrl *pHead = m_ListCtrl.GetHeaderCtrl(); if(pHead &&

繼承CStatic 平面座標形式顯示資料序列

 #pragma once// TimeGraphics_Ctrl.h : header file//#include <math.h>/////////////////////////////////////////////////////////////////////////////// CTimeGraphics_Ctrl window#define GRID_X_NUMBER 10 //X軸座標柵格數#define GRID_Y_NUMBER 10

通過編輯框的值,使編輯框的值超出某個範圍時具有警示背景色

 HBRUSH CDlg1Dlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor){ HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: Change any attributes of the DC here if(pWnd->GetDlgCtrlID() == IDC_EDIT1) { COLORREF bkColor =

從CEdit衍生類別,在啟用輸入是切換IME為預設IME

#pragma once// EditEx.h : header file///////////////////////////////////////////////////////////////////////////////// CEditEx windowclass CEditEx : public CEdit{// Constructionpublic:CEditEx();// Attributespublic:// Operationspublic:// Overrides//

從CEdit派生一個只允許輸入16進位資料的新類

//從CEdit派生一個只允許輸入16進位資料的新類//支援輸入 空格 0-F Backspace//在啟用時切換IME至英文鍵盤//在失去焦點時恢複IME//遇非法字元時有警示音提示 #pragma once// CHexEditCtrlclass CHexEditCtrl : public CEdit{DECLARE_DYNAMIC(CHexEditCtrl)public:CHexEditCtrl();virtual ~CHexEditCtrl();protected:afx_msg

基於對話方塊的空閑訊息處理

//.h head file#include <afxpriv.h> // For WM_KICKIDLEpublic:afx_msg LRESULT OnKickIdle(WPARAM, LPARAM);//.CPPBEGIN_MESSAGE_MAP(CIdleDlg, CDialog) ON_MESSAGE(WM_KICKIDLE, OnKickIdle)END_MESSAGE_MAP()// Handle MFC private message WM_KICKIDLE.

CreateEvent 自動/手動重設的測試

{ HANDLE hEvent = CreateEvent(NULL, FALSE, //automatically resets TRUE, //flag for initial state NULL); WaitForSingleObject(hEvent, -1); //此處正常退出,因為前面的初始值是TRUE SetEvent(hEvent); //設定事件 WaitForSingleObject(hEvent, -1);

可滾動屬性頁面(對話方塊)實現

//SCrollAblePropertyPage.h#pragma once// CSCrollAblePropertyPage 對話方塊class CSCrollAblePropertyPage : public CPropertyPage{DECLARE_DYNAMIC(CSCrollAblePropertyPage)public:CSCrollAblePropertyPage(UINT nIDD=IDC_STATIC);virtual ~CSCrollAblePropertyPage();

在剪下板中使用自訂格式的資料

void TestManualFormatClipboard(){ //自訂資料結構體 typedef struct _MYSTRUCT { CHAR charVal[16]; int iVal; long lVal; double fVal; }MYSTRUCT, *LPMYSTRUCT; MYSTRUCT wrStruct = {"ABCD", 0, 1, 2.0}; MYSTRUCT rdStruct = {"DCBA", 0, 2, 4.0};

DirectX 在對話方塊播放視頻

#include <mmsystem.h>#include <uuids.h> #include <initguid.h>#include <Strmif.h>#include <control.h>#include <ddrawex.h> #pragma comment(lib, "Strmiids.lib")#define OATRUE (-1) #define OAFALSE (0) BOOL CDlg666Dlg:

從CPropertySheet派生一個具有自繪功能的新類

 //從CPropertySheet派生一個新類 //具有自繪題頭功能 #pragma once// OwnerDraw_PropertySheet.h : header file///////////////////////////////////////////////////////////////////////////////// COwnerDraw_PropertySheetclass COwnerDraw_PropertySheet : public

在程式中使用JPEG等非BMP資源檔

 GDI+ 中支援IStream載入映像,因此可以構建一個IStream流,實現從IStream載入映像1: 在CXXXXApp::InitInstance() 中添加 AfxOleInit(); 2: 資源編輯器中匯入圖片檔案,如JPG,PNG等,並命名資源類型3: 修改標頭檔.h 代碼如下4: 修改.cpp檔案 代碼如下注意資源名需要與代碼中的資源名對應   //.h#include <atlimage.h>protected: CImage

Unicode字串與Unicode資料的相互轉換

//UNICODE字串轉換到UNICODE資料//返迴轉換後的UNICODE資料長度int ConvUniStr2Unicode(LPCSTR szUnicodeString, WCHAR *pWchar, int iBuffSize){ int iRet = 0; int iUstrLen = strlen(szUnicodeString); ASSERT(pWchar); ASSERT(iUstrLen%6 == 0); int iOffset = 0;

使用HTTP傳輸

使用HTTP傳輸 #include <afxinet.h>#include <afxsock.h>//http傳輸DWORD HttpTranslate( int iRequstType, LPCTSTR pstrURL, LPCTSTR strOptions, CString &szReturn){ DWORD dwError = 0; DWORD dwServiceType; CString strServer; CString

使用LCMapString完成繁體中文到簡體中文的相互轉換

   TCHAR szOutBuffer[128+1] = {0}; WORD wLanguageID = MAKELANGID(LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED); LCID Locale = MAKELCID(wLanguageID, SORT_CHINESE_PRCP); int iRet = LCMapString(Locale, LCMAP_SIMPLIFIED_CHINESE, _T("亞洲"), -1,

IShellFolder 介面瀏覽檔案夾(一)

void SpecialFolder_Browse(HWND hwnd){LPMALLOC g_pMalloc;/* Gets the Shell's default allocator */if (::SHGetMalloc(&g_pMalloc) == NOERROR){BROWSEINFO bi; LPSTR lpBuffer;LPITEMIDLIST pidlSpecialFolder; // PIDL for Special FolderLPITEMIDLIST

總頁數: 61357 1 .... 17737 17738 17739 17740 17741 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.