青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

 

 1.  在CSatic控件上增加圖標及位圖

CStatic *pStat = NULL;

pStat = (CStatic*)GetDlgItem(控件ID);

       pStat->ModifyStyle(SWP_NOZORDER, SS_ICON);

   可用兩種方法增加圖標

(1)    pStat->SetIcon(AfxGetApp()->LoadIcon(圖標ID));

(2)    pStat->SetIcon(LoadIcon(::AfxGetInstanceHandle(),”圖標名稱”)); //圖標名字改為“IDI_ICON”的形式,因為這里要求的是字符串形式的名稱。

   增加Bmp圖片的形式同上,將ModifyStyle中的SS_ICON改為SS_BITMAP。用相應的位圖增加函數即可。

2.  CClientDC,CWindowDC

這兩個類都從CDC類派生,CClientDC類用于獲取客戶區的DC(不包括標題欄,菜單欄,工具欄),創建了CClientDC類對象后不需用ReleaseDC來釋放。如:

CCleintDC dc(this);獲取本窗口的dc,CClientDC dc(GetParent())可獲取父窗口DC,此時就可在非客戶區進行dc操作。

CWindowDC 獲取整個窗口的dc,可對整個窗口進行操作,CWindowDC(GetParent()) 注意在這獲得的父窗口對于對話框情況下將是windows窗口,最后無需ReleaseDC釋放

GetDesktopWindow()獲取桌面窗口句柄。

::CreateIC("DISPLAY",NULL,NULL,NULL);獲取桌面的HDC

3.  獲取隨機數rand()

要獲取一定范圍內的隨機數可用:

Srand((unsigned) time(NULL));   //意思是每次產生的隨機數都不相同.

(int)(rand())/(float) RAND_MAX * 10); //返回1-10之間的隨機數


 4.  獲取路徑:

char path[MAX_PATH] = "\0";

 GetModuleFileName(NULL, path, MAX_PATH);  //應用程序路徑

 GetSystemDirectory();  //獲取Windows系統目錄路徑

 GetWindowDirectory()  //獲取Windows目錄路徑


 5.  動態加載ODBC數據源

//mdbName為數據庫名稱, DSN為數據源名稱

 void  SetODBCSource(char * mdbName ,char * DSNName) 

{

       char path[256]="";

       char pathMDB[256]="";

       GetAppPath(path);

       strcpy(pathMDB,path);

       strcat(pathMDB, "\\");

       strcat(pathMDB, mdbName);

       char MdbConfig[256]= "DSN=" ;// pwd

       strcat(MdbConfig , DSNName);

       char * pMconfig = MdbConfig + strlen(MdbConfig) + 1 ;

       strcpy(pMconfig,"DBQ=");

       pMconfig += 4;

       strcat(pMconfig,pathMDB);

       pMconfig += strlen(pathMDB) + 1 ;

       strcpy(pMconfig,"DEFAULTDIR=");

       strcat(pMconfig,path);

       strcat(pMconfig,"\0");

if(!SQLConfigDataSource(NULL,ODBC_ADD_SYS_DSN,"Microsoft  Access

Driver (*.mdb)\0",MdbConfig))  //注意Driver后的空格

       {

              TRACE("加載數據庫失敗,請檢查數據庫是否存在\n");

              return;           

       }


6.  線程退出

線程退出請使用return 或 ExitThread()來正常退出線程,盡是避免使用TerminateThread來終止線程,因為終止后線程資源將不會被釋放。

一般情況下在CreateThread創建了線程后即使用CloseHandle()來關閉線程句柄,以防止TerminateThread得到句柄后,進行線程的強制終止。


 7.  自定義宏檢查錯誤BOOL錯誤。

#define ASSERT_ERROR(Code)\

{\

   If (Code)\

       AfxMessageBox(“提示1 “);\

   Else \

       AfxMessageBox(“錯誤1”);\

}

定義以后可在需要使用的地方使用,如:BOOL bStat = TRUE;

ASSERT_ERROR(bStat); //此時將執行“提示1”,bStat = FALSE時執行“錯誤1”


 8.  將程序加入注冊表啟動項:

LPCTSTR lpcAppPath = “程序路徑”;

CString str = “SOFTWARE\\Microsoft\\Windows\\CurrentverSion\\Run”;

HKEY hResult;

RegOpenKey(HKEY_LOCAL_MACHINE, (LPCSTR)str.GetBuffer(0), &hResult);

RegSetValueEx(hResult, “程序名稱”, 0, REG_SZ, (const unsigned char*)lpcAppPath,

       Sizeof(char) * strlen(lpcAppPath));

RegCloseKey(hResult);


 9.  程序調試

在調試環境下的Vlaue窗口中輸入” @err,hr” 可返回當前發生的錯誤原因


 10.        獲取工具條指針,工具條有一特殊標識(AFX_IDW_TOOLBAR)

CToolBar *pTool = (CToolBar*)AfxGetMainWnd()->GetDescendantWindow(特殊標識)

;

獲取狀態條指針。

(CStatusBar*)AfxGetMainWnd()->GetDescendantWindow(AFX_IDW_STATUS_BAR);


 獲取主窗口指針:

CMainFrame *pFrame = (CMainFrame*)(AfxGetApp()->m_pMainWnd);



獲取視類指針:

CMyView *pView= CMyView*)((CMainFrame*)AfxGetApp()->m_pMainWnd)->GetActiveView();

 

 

CMyView *pView=(CMyView*)GetActiveView();


11.顯示或隱藏任務欄:

 ::ShowWindow(::FindWindow(“Shell_TrayWnd”, NULL, SW_SHOW),隱藏用SW_HIDE

 12.使用基于對話框的程序在任務欄隱藏。

 This->ModifyStyleEx(WS_EX_APPWINDOW, 0);

 13.只允許程序運行一個實例:

 HANDLE h_Muex = CreateMutex(NULL, TRUE, m_pszAppName);

 If (GetLastError() == ERROR_ALREADY_EXISTS)

    Return False;

Posted on 2005-11-11 13:34 艾凡赫 閱讀(403) 評論(0)  編輯 收藏 引用 所屬分類: MFC技術
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久精品夜色噜噜亚洲aⅴ| 激情婷婷亚洲| 亚洲欧美日韩在线| 中文精品视频| 99在线视频精品| 久久综合久久美利坚合众国| 性欧美18~19sex高清播放| 亚洲欧美日韩在线| 久久精品欧洲| 老司机精品视频网站| 欧美不卡视频一区| 欧美日韩国产小视频| 欧美美女视频| 国产精品99免视看9| 国产精品腿扒开做爽爽爽挤奶网站| 欧美日韩国产综合久久| 国产精品免费在线| 狠狠色综合色区| 日韩视频免费观看| 亚洲资源av| 欧美精品一区二区在线观看| 亚洲欧美三级伦理| 亚洲精品字幕| 亚洲午夜视频| 欧美一级视频精品观看| 巨乳诱惑日韩免费av| 欧美日韩国产一区二区三区地区| 欧美先锋影音| 精品成人一区二区| 亚洲一区二区三区视频播放| 久久综合电影一区| 9国产精品视频| 久久激情五月丁香伊人| 欧美日本亚洲| 亚洲第一精品福利| 久久精品国产清自在天天线| 亚洲精品看片| 亚洲性感美女99在线| 欧美国产精品v| 好看的日韩av电影| 午夜国产精品视频免费体验区| 亚洲第一伊人| 久久久免费av| 国产亚洲女人久久久久毛片| 亚洲在线播放| 亚洲精品一区二区三区不| 久久国产乱子精品免费女| 欧美日韩免费一区二区三区视频 | 亚洲国产高清在线| 午夜久久福利| 欧美精品色综合| 在线观看成人小视频| 欧美在线日韩| 亚洲一区精品电影| 国产伦精品一区二区三区免费迷| 亚洲影院免费| 宅男66日本亚洲欧美视频| 欧美日韩三级| 99综合视频| 久久精品在线视频| 亚洲一区二区动漫| 亚洲精品一二三区| 欧美大片在线观看| 最新高清无码专区| 亚洲第一精品电影| 欧美激情精品久久久久久| 国产精品一区二区三区久久久| 亚洲一区视频在线| 亚洲性感美女99在线| 国产日韩在线视频| 欧美在线首页| 久久av资源网站| 国外视频精品毛片| 男男成人高潮片免费网站| 麻豆成人小视频| 亚洲日本在线观看| 亚洲欧洲精品一区| 欧美日韩三级| 久久成人这里只有精品| 久久久久久网| 9色精品在线| 一区二区三区视频在线 | 亚洲乱码国产乱码精品精天堂| 欧美一区二区三区另类| 亚洲国产一区二区在线| 久久影视三级福利片| 亚洲激情影院| 日韩一二三在线视频播| 国产精品亚发布| 老司机午夜精品| 蜜臀a∨国产成人精品| 夜夜嗨一区二区| 亚洲欧美激情一区二区| 亚洲二区精品| 亚洲美女在线视频| 国产一区日韩欧美| 亚洲精品美女| 国产一区二区三区黄视频| 亚洲黄色片网站| 国产香蕉97碰碰久久人人| 亚洲国产一区二区a毛片| 国产乱码精品一区二区三区av| 欧美a级片网站| 国产精品日韩欧美一区| 欧美不卡在线视频| 国产精品久久激情| 亚洲电影中文字幕| 国产精品网曝门| 欧美黄色小视频| 国产亚洲欧美日韩日本| 99热这里只有精品8| 亚洲高清在线播放| 先锋影音网一区二区| 在线一区二区三区做爰视频网站| 久久精品人人爽| 午夜精品美女久久久久av福利| 美女爽到呻吟久久久久| 久久成人精品无人区| 国产精品国色综合久久| 亚洲日本无吗高清不卡| 中文国产成人精品| 在线成人亚洲| 欧美一级专区免费大片| 亚洲影院色在线观看免费| 欧美激情视频网站| 欧美激情按摩在线| 久久爱www久久做| 99精品国产在热久久婷婷| 伊人蜜桃色噜噜激情综合| 亚洲欧美激情视频在线观看一区二区三区 | 亚洲国产精品一区在线观看不卡 | 欧美理论电影网| 另类酷文…触手系列精品集v1小说| 国产精品日韩久久久久| 一区二区三区视频在线观看| 国产精品99久久久久久久vr| 欧美理论在线播放| 亚洲人成在线观看| 久久综合综合久久综合| 久久女同精品一区二区| 国产美女一区| 亚洲欧美综合| 久久久中精品2020中文| 一区二区三区我不卡| 久久综合给合久久狠狠狠97色69| 久久亚洲精品中文字幕冲田杏梨| 国内精品亚洲| 久久全国免费视频| 欧美高清视频一区二区| 亚洲理论在线| 国产精品草莓在线免费观看| 夜夜嗨av一区二区三区网页| 亚洲一区二区视频在线| 国产精品美腿一区在线看| 亚洲午夜精品一区二区| 久久国产精品99国产精| 久久精彩视频| 欧美大片在线影院| 一区二区日韩欧美| 国产麻豆成人精品| 久久中文精品| 亚洲少妇诱惑| 免费欧美日韩国产三级电影| 亚洲欧洲精品一区| 国产精品国产三级欧美二区| 久久黄金**| 夜夜夜久久久| 免费成人黄色片| 亚洲一本大道在线| 在线成人激情黄色| 国产精品久久99| 男人的天堂亚洲在线| 亚洲欧美精品在线观看| 欧美freesex8一10精品| 一本色道久久综合亚洲精品按摩| 国产免费观看久久黄| 欧美国产欧美亚洲国产日韩mv天天看完整| 亚洲精品网站在线播放gif| 欧美在线综合| 日韩午夜免费| 亚洲第一网站免费视频| 欧美成人日本| 一区二区三区偷拍| 黄色成人小视频| 欧美日韩在线精品| 久久综合久久综合九色| 亚洲一区视频在线观看视频| 亚洲欧美日韩国产另类专区| 在线观看欧美日韩| 国产精品黄视频| 欧美18av| 欧美主播一区二区三区| 亚洲图片你懂的| 亚洲电影在线观看| 欧美精品一区二| 国产精品电影观看| 亚洲国产成人不卡| 一区二区三区欧美激情| 欧美精品亚洲一区二区在线播放| 免费在线看成人av|