VC最常用操作程式20項列舉

2021-04-07 02:39:23 字數 4266 閱讀 7757

一、開啟cd-rom

mcisendstring("set cdaudio door open wait",null,0,null);

二、關閉cd_rom

mcisendstring("set cdaudio door closed wait",null,0,null);

三、關閉計算機

osversioninfo osversioninfo; //包含作業系統版本資訊的資料結構

osversioninfo.dwosversioninfosize = sizeof(osversioninfo);

getversionex(&osversioninfo); //獲取作業系統版本資訊

if(osversioninfo.dwplatformid == ver_platform_win32_windows)

四、重啟計算機

typedef int (callback *shutdowndlg)(int); //顯示關機對話方塊函式的指標

hinstance hinst = loadlibrary("shell32.dll"); //裝入shell32.dll

shutdowndlg shutdowndialog; //指向shell32.dll庫中顯示關機對話方塊函式的指標

if(hinst != null)

五、列舉所有字型

logfont lf;

lf.lfcharset = default_charset; // initialize the logfont structure

strcpy(lf.lffacename,"");

cclientdc dc (this);

// enumerate the font families

::enumfontfamilie***((hdc) dc,&lf,

(fontenumproc) enumfontfamproc,(lparam) this,0);

//列舉函式

int callback enumfontfamproc(lpenumlogfont lpelf,

lpnewtextmetric lpntm,dword nfonttype,long lparam)

其中m_ctlfontlist是乙個列表控制項變數

六、一次只執行乙個程式例項,如果已執行則退出

if( findwindow(null,"程式標題")) exit(0);

七、得到當前滑鼠所在位置

cpoint pt;

getcursorpos(&pt); //得到位置

八、上下文選單事件觸發事件:oncontextmenu事件

九、顯示和隱藏程式選單

cwnd *pwnd=afxgetmainwnd();

if(b_m) //隱藏選單

else

十、獲取可執行檔案的圖示

hicon hicon=::extracticon(afxgetinstancehandle(),_t("notepad.exe"),0);

if (hicon &&hicon!=(hicon)-1)

destroyicon(hicon);

十一、視窗自動靠邊程式演示

bool adjustpos(crect* lprect)

else

rcwa=rworkarea;

int ix=lprect->left;

int iy=lprect->top;

if(ix < rcwa.left + detastep && ix!=rcwa.left)

if(iy < rcwa.top + detastep && iy!=rcwa.top)

if(ix + lprect->width() > rcwa.right - detastep && ix !=rcwa.right-lprect->w

idth())

if(iy + lprect->height() > rcwa.bottom - detastep && iy !=rcwa.bottom-lprect

->height())

return false;

} //然後在onmoveing事件中使用所下過程呼叫

crect r=*prect;

adjustpos(&r);

*prect=(rect)r;

十二、給系統選單新增乙個選單項

十三、執行其它程式

1、執行email或**

char szmailaddress[80];

strcpy(szmailaddress,"mailto:[email protected]");

shellexecute(null, "open", szmailaddress, null, null, sw_shownormal);

2、執行可執行程式

winexec("notepad.exe",sw_show); //執行計事本

十四、動態增加或刪除選單

1、 增加選單

2、 刪除選單

//刪除

cmenu *mainmenu;

mainmenu=afxgetmainwnd()->getmenu(); //得到主選單

cstring str ;

for(int i=(mainmenu->getsubmenu (0))->getmenuitemcount()-1;i>=0;i--) //取得菜

單的項數。

十五、改變應用程式的圖示

靜態更改: 修改圖示資源idr_mainframe。它有兩個圖示,乙個是16*16的,另乙個是32*32的,注意要一起修改。

動態更改: 向主視窗傳送wm_seticon訊息.**如下:

十六、另一種改變視窗標題的方法

使用語句 cwnd* m_pcwnd = afxgetmainwnd( ),然後,再以如下形式呼叫setwindowtext()函式:

setwindowtext( *m_pcwnd,(lpctstr)m_windowtext);// m_windowtext可以是乙個cstring類的變數。

十七、剪下板上通過增強元檔案拷貝影象資料

下面**拷貝通過元檔案拷貝影象資料到任何應用程式,其可以放置在cview派生類的函式中。

cmetafiledc * m_pmetadc = new cmetafiledc();

m_pmetadc->createenhanced(getdc(),null,null,"whatever");

//draw meta file

//do what ever you want to do: bitmaps, lines, text...

//close meta file dc and prepare for clipboard;

henhmetafile hmf = m_pmetadc->closeenhanced();

//copy to clipboard

openclipboard();

emptyclipboard();

::setclipboarddata(cf_enhmetafile,hmf);

closeclipboard();

//deletemetafile(hmf);

delete m_pmetadc;

十八、剪下板上文字資料的傳送

把文字放置到剪接板上:

cstring source;

//put your text in source

if(openclipboard())

從剪接板上獲取文字:

char * buffer;

if(openclipboard())

closeclipboard();

十九、將捕捉螢幕影象到剪下版中

void cshowbmpindlgdlg::oncutscreen()

; hbitmap hbitmap;

hbitmap=copyscreentobitmap(&r_bmp);

//hwnd為程式視窗控制代碼

if (openclipboard())

showwindow(sw_show);

} hbitmap cshowbmpindlgdlg::copyscreentobitmap(lprect lprect) }

二十、如何將位圖縮放顯示在static控制項中

//在staic控制項內顯示位圖

void cshowbmpindlgdlg::showbmpinstaic()

VC最常用操作程式20項列舉

一 開啟cd rom mcisendstring set cdaudio door open wait null,0,null 二 關閉cd rom mcisendstring set cdaudio door closed wait null,0,null 三 關閉計算機 osversioninf...

Nor Flash操作程式

1 物理連線 am29lv160db的norflash 2 讀操作 讀操作不需要命令序列,缺省會進入讀取狀態 u16 read en29lv160ab u32 addr 3 獲取id define flash base 0x00000000 flash接到bank0上 define cmd addr...

android adb命令操作程式

由於開發需要頻繁的安裝 重新安裝,而重新安裝有的時候會報異常,繁瑣的事也多,此時在執行中執行命令多快捷,同時為我們節約了不少時間。關閉adb服務 adb kill server 啟動adb服務 adb start server 查詢當前模擬器 裝置 adb devices 假設為 ebook.apk...