**vc 共享樂園
...vc雕蟲小技集(六)
何志丹
1,,如何取得tree control上的checkbox狀態~
oninit中加:
m_treectrl.insertitem("item1");
m_treectrl.insertitem("item2");
void ccdialogdlg::onbutton1()
htreeitem hitem = m_treectrl.getrootitem();
while(null != hitem)
cstring str= m_treectrl.getitemtext(hitem);
if("item2" == str)
if(m_treectrl.getcheck(hitem))
afxmessagebox("選中");
hitem = m_treectrl.getnextvisibleitem(hitem);
2,怎麼用乙個程式向另乙個程式傳送字元並讓其顯示出來
首先通過findwindow取得windows程式的視窗控制代碼,
然後通過getdlgitem取得其中輸入框的視窗控制代碼,
最後,向該視窗控制代碼傳送wm_char訊息即可顯示字元
例如,對於notepad視窗,可以以如下的方式向其中輸入乙個』a』:
取得記事本的視窗控制代碼
hwnd hwnd = ::findwindow( null , "未定標題 - 記事本" );
取得其中輸入框的視窗控制代碼
hwnd hedit = ::getdlgitem( hwnd , 0x0f ); // 這裡0x0f是編輯框的id,可在spy++中觀察得到
向輸入框中填寫』a』
::sendmessage( hedit , wm_char , (wparam)』a』 , 0x00000001 );
ctime t = ctime::getcurrenttime();
cstring str; str.format("%d-%d-%d",t.getyear(),t.getmonth(),t.getday());
str+= t.format("--%h-%m-%s");
afxmessagebox(str);
一定要用ctime::getcurrenttime();getcurrenttime()是乙個過時的函式.
4, //改變按鈕的背景色。
hbrush crectwindow2view::onctlcolor(cdc* pdc, cwnd* pwnd, uint nctlcolor)
hbrush hbr = cformview::onctlcolor(pdc, pwnd, nctlcolor);
switch (nctlcolor)
case ctlcolor_btn:
cbrush brush (rgb (128 , 0 , 128) );//你的顏色
cbrush* poldbrush = pdc->selectobject(&brush);
pdc->selectobject (poldbrush );
return cformview::onctlcolor(pdc, pwnd, nctlcolor);
5, 加速鍵的使用.
在dlg的標頭檔案中加入:
haccel m_haccel;
在dlg的建構函式中載入加速鍵:
基於對話方塊的程式如何使用加速鍵?
m_haccel=::loadaccelerators(afxgetinstancehandle(),makeintresource(idr_accelerator1));//加速鍵id
過載pretranslatemessage函式:
bool cdlg::pretranslatemessage(msg* pmsg)
// todo: add your specialized code here and/or call the base class
if(m_haccel!=null)
if(::translateaccelerator(m_hwnd,m_haccel,pmsg))
return true;
return cdialog::pretranslatemessage(pmsg);
6,怎麼把乙個檔案儲存到其它地方?
if(!copyfile("f://he.txt","d://he1.txt",true))
if(idok == messagebox("有同名檔案,你要覆蓋嗎?",null,mb_okcancel))
VC雕蟲小技集 一
vc雕蟲小技集 一 何志丹1,避免隨機數相同,可以取當前時間,讀檔案,讀任意記憶體 如未定義變數,有一定危險 ctime t ctime getcurrenttime int n t.getminute 60 t.getsecond while n 0 const int n 100 int res...
VC雕蟲小技集 一
vc 共享樂園 vc雕蟲小技集 一 何志丹 1,避免隨機數相同,可以取當前時間,讀檔案,讀任意記憶體 如未定義變數,有一定 危險 ctime t ctime getcurrenttime int n t.getminute 60 t.getsecond while n 0 rand const in...
VC程式設計技巧錦集
問題一 解決workspace中的classview顯示混亂 解答 即新增的成員變數或函式不能顯示 即使顯示出來了變數或函式,雙擊後不能跳至正確的位置。刪除.ncb檔案,再rebuild all,即可。問題二 向專案中加入自己定義的類的簡單方法 解答 選擇insert new class選單,彈出對...