锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲人永久免费,国产精品视频一,久久天天躁夜夜躁狠狠躁2022 http://www.shnenglu.com/mzty/category/201.html<br/> <br/> <a href = "http://www.shnenglu.com/mzty/archive/2007/03/02/19109.html"><font size = 5 color ="#00FFFF">{C++ 鍩虹}<font/></a> <a href = "http://www.shnenglu.com/mzty/archive/2007/08/13/29922.html"><font size = 5 color ="#00FFFF">{C++ 楂樼駭}<font/></a> <a href = "http://www.shnenglu.com/mzty/archive/2007/04/16/22064.html"><font size = 5 color ="#00FFFF">{C#鐣岄潰錛孋++鏍稿績綆楁硶}<font/></a> <a href = "http://www.shnenglu.com/mzty/archive/2007/03/04/19163.html"><font size = 5 color ="#00FFFF">{璁捐妯″紡}<font/></a> <a href = " http://www.shnenglu.com/mzty/archive/2007/03/04/19167.html"><font size = 5 color ="#FF0000">{C#鍩虹}<font/></a> zh-cnThu, 22 May 2008 09:01:31 GMTThu, 22 May 2008 09:01:31 GMT60寰蔣C++鏍囧噯錛堜簨浠跺疄渚嬶級http://www.shnenglu.com/mzty/archive/2006/11/25/15657.html姊﹀湪澶╂動姊﹀湪澶╂動Sat, 25 Nov 2006 09:38:00 GMThttp://www.shnenglu.com/mzty/archive/2006/11/25/15657.htmlhttp://www.shnenglu.com/mzty/comments/15657.htmlhttp://www.shnenglu.com/mzty/archive/2006/11/25/15657.html#Feedback3http://www.shnenglu.com/mzty/comments/commentRss/15657.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/15657.html闃呰鍏ㄦ枃

姊﹀湪澶╂動 2006-11-25 17:38 鍙戣〃璇勮
]]>
濡備綍璋冭瘯紼嬪簭鐨?Release 鐗堟湰錛?杞?http://www.shnenglu.com/mzty/archive/2006/11/19/15439.html姊﹀湪澶╂動姊﹀湪澶╂動Sun, 19 Nov 2006 15:39:00 GMThttp://www.shnenglu.com/mzty/archive/2006/11/19/15439.htmlhttp://www.shnenglu.com/mzty/comments/15439.htmlhttp://www.shnenglu.com/mzty/archive/2006/11/19/15439.html#Feedback1http://www.shnenglu.com/mzty/comments/commentRss/15439.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/15439.html
鏂規硶涓銆佸埄鐢?*.PDB 絎﹀彿鏂囦歡璋冭瘯 Release 鐗堟湰
鍦?VCKBASE 鐨勫湪綰挎潅蹇椾腑鏈変竴綃囧弬鑰冩枃绔狅細絎﹀彿鏂囦歡鈥斺擶indows 搴旂敤紼嬪簭璋冭瘯蹇呭錛坔ttp://www.vckbase.com/document/viewdoc/?id=1710錛夛紝鏂囩珷璋堝埌浜嗗浣曚駭鐢?Release 鐗堟湰浜岃繘鍒舵枃浠跺搴旂殑 PDB 鏂囦歡鐨勯棶棰樸傛湁浜?PDB 鏂囦歡鍚庯紝灝卞彲浠ヨ皟璇?Release 浜嗭紝鏂規硶鏄細
聽聽聽聽1銆佸湪Project Settings閲岄塖ettings For涓篈ll Configurations銆?
聽聽聽聽2銆佸湪C/C++鏍囩涓紝Debug info 閫?Program Database銆?
聽聽聽聽3銆佸湪Link 鏍囩涓紝Category閫?Debug錛岄変腑Debug info 澶嶉夋鍜孧icrosoft format銆?
榪涜浜嗕笂榪拌緗悗錛屾垜浠氨鍙互鍍忓湪璋冭瘯鐗堟湰涓偅鏍瘋緗柇鐐硅繘琛屾祴璇曚簡錛岀敱浜庝唬鐮佷紭鍖栵紝鏈変簺鍙橀噺瑙傚療涓嶅埌錛岃鐨勮繍琛岄『搴忓彲鑳戒篃浼氫笉鍚屻?
鏈変竴鐐歸渶瑕佹敞鎰忥細ASSERT瀹忓湪 Release 鐗堟湰涓笉璧蜂綔鐢紝鍦?Release 鐗堟湰涓簲璇ヤ嬌鐢?VERIFY 鏉ヤ唬鏇?ASSERT 榪涜璋冭瘯銆傚鏋滃彂琛岀増鏈繍琛屾湁闂錛屽彲浠ュ厛紱佹鎵鏈変唬鐮佷紭鍖栧啀榪涜璋冭瘯銆?br />
鏂規硶浜屻佸湪闇瑕佸姞鏂偣鐨勫湴鏂規坊鍔犲涓嬫眹緙栬鍙ワ細
聽聽聽聽__asm int 3

涓嶈繃璋冭瘯鐨勬椂鍊欐棤娉曟樉紺篊紼嬪簭錛屽彧鏈塧sm浠g爜銆?
聽聽聽聽
姝ゅ int 3 鏄笓闂ㄧ敤鏉ヨ緗柇鐐圭殑錛屾槸 CPU 瀹氫箟鐨勶紝Windows 鍜?DOS 涓嬬殑澶у鏁拌皟璇曞櫒閮介噰鐢ㄨ繖縐嶆柟娉曘?br />
鏈創涓嶆柇鏇存柊涓紝甯屾湜澶у璺熻創璐$尞鍑烘洿濂界殑璋冭瘯鏂規硶銆備互渚垮彈鐩婅呭皯璧板集璺?.....

姊﹀湪澶╂動 2006-11-19 23:39 鍙戣〃璇勮
]]>
VC涓姩鎬佺敓鎴愭帶浠?杞?http://www.shnenglu.com/mzty/archive/2006/11/14/15150.html姊﹀湪澶╂動姊﹀湪澶╂動Tue, 14 Nov 2006 05:06:00 GMThttp://www.shnenglu.com/mzty/archive/2006/11/14/15150.htmlhttp://www.shnenglu.com/mzty/comments/15150.htmlhttp://www.shnenglu.com/mzty/archive/2006/11/14/15150.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/15150.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/15150.html鍔ㄦ佹帶浠舵槸鎸囧湪闇瑕佹椂鐢盋reate()鍒涘緩鐨勬帶浠訛紝榪欎笌棰勫厛鍦ㄥ璇濇涓斁緗殑鎺т歡鏄笉鍚岀殑銆?

銆銆涓銆佸垱寤哄姩鎬佹帶浠訛細

銆銆涓轟簡瀵圭収錛屾垜浠厛鏉ョ湅涓涓嬮潤鎬佹帶浠剁殑鍒涘緩銆?br />
銆銆鏀劇疆闈欐佹帶浠舵椂蹇呴』鍏堝緩绔嬩竴涓鍣紝涓鑸槸瀵硅瘽妗嗭紝榪欐椂鎴戜滑鍦ㄥ璇濇緙栬緫紿楀彛涓紝浠庡伐鍏風獥鍙d腑鎷栧嚭鎵闇鎺т歡鏀懼湪瀵硅瘽妗嗕腑鍗沖彲錛屽啀閫傚綋淇敼鎺т歡ID錛岃緗帶浠跺睘鎬э紝涓涓潤鎬佹帶浠跺氨鍒涘緩濂戒簡錛屽綋瀵硅瘽妗嗚鏄劇ず鏃訛紝鍏朵笂鐨勬帶浠朵篃浼氭樉紺恒?br />
銆銆闈欐佹帶浠朵笉闇瑕佽皟鐢–reate()鍑芥暟鏉ュ垱寤恒?br />
銆銆鑰屽垱寤哄姩鎬佹帶浠舵湁寰堝ぇ涓嶅悓錛屼互涓嬩互鎸夐挳涓轟緥錛岀湅涓涓嬪姩鎬佹帶浠剁殑鍒涘緩榪囩▼錛?br />
銆銆1.寤虹珛鎺т歡ID鍙鳳細

銆銆ID鍙鋒槸鎺т歡鐨勬爣璇嗭紝鍒涘緩鎺т歡鍓嶅繀欏誨厛涓哄畠璁劇疆涓涓狪D鍙楓?br />
銆銆鎵撳紑璧勬簮涓殑鈥淪tring Table鈥濓紝鍦ㄧ┖鐧借涓婂弻鍑婚紶鏍囷紝榪欐椂浼氬脊鍑轟竴涓狪D灞炴у璇濇錛屽湪鍏朵腑鐨処D緙栬緫妗嗕腑杈撳叆ID錛屽錛欼DC_MYBUTTON錛屽湪Caption涓緭鍏ユ帶浠舵爣棰樻垨娉ㄨВ錛堟敞錛欳aption妗嗕笉鑳戒負絀猴紝涓虹┖浼氬鑷村垱寤哄け璐ワ級錛岃繖閲屾垜杈撳叆鐨勬槸鎸夐挳涓婅鏄劇ず鐨勬枃瀛?-鍔ㄦ佹寜閽?br />
銆銆2.寤虹珛鎺т歡瀵硅薄錛?br />
銆銆涓嶅悓縐嶇被鐨勬帶浠跺簲鍒涘緩涓嶅悓鐨勭被瀵硅薄錛?br />
銆銆路鎸夐挳鎺т歡 CButton 錛堝寘鎷櫘閫氭寜閽佸崟閫夋寜閽拰澶嶉夋寜閽級
銆銆路緙栬緫鎺т歡 CEdit
銆銆路闈欐佹枃鏈帶浠?CStatic
銆銆路鏍囩鎺т歡 CTabCtrl
銆銆路鏃嬭漿鎺т歡 CSpinButtonCtrl
銆銆路婊戞爣鎺т歡 CSliderCtrl
銆銆路澶氫俊鎭紪杈戞帶浠?CRichEditCtrl
銆銆路榪涘害鏉℃帶浠?CProgressCtrl
銆銆路婊氬姩鏉℃帶浠?CSrcollBar
銆銆路緇勫悎妗嗘帶浠?CComboBox
銆銆路鍒楄〃妗嗘帶浠?CListBox
銆銆路鍥懼儚鍒楄〃鎺т歡 CImageCtrl
銆銆路鏍戠姸鎺т歡 CTreeCtrl
銆銆路鍔ㄧ敾鎺т歡 CAnimateCtrl

銆銆鏈緥涓垜浠垱寤轟竴涓狢Button綾葷殑鏅氭寜閽傛敞鎰忎笉鑳界洿鎺ュ畾涔塁Button瀵硅薄錛屽錛欳Button m_MyBut;榪欑瀹氫箟鍙兘鐢ㄦ潵緇欓潤鎬佹帶浠跺畾涔夋帶鍒跺彉閲忥紝涓嶈兘鐢ㄤ簬鍔ㄦ佹帶浠躲?br />
銆銆姝g‘鍋氭硶鏄敤new璋冪敤CButton鏋勯犲嚱鏁扮敓鎴愪竴涓疄渚嬶細

CButton *p_MyBut = new CButton();

銆銆鐒跺悗鐢–Button綾葷殑Create()鍑芥暟鍒涘緩錛岃鍑芥暟鍘熷瀷濡備笅錛?br />
BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );

銆銆lpszCaption鏄寜閽笂鏄劇ず鐨勬枃鏈紱dwStyle鎸囧畾鎸夐挳椋庢牸錛屽彲浠ユ槸鎸夐挳椋庢牸涓庣獥鍙i鏍肩殑緇勫悎錛屽彇鍊兼湁錛?br />
銆銆紿楀彛椋庢牸錛?br />
銆銆路WS_CHILD 瀛愮獥鍙o紝蹇呴』鏈?br />銆銆路WS_VISIBLE 紿楀彛鍙錛屼竴鑸兘鏈?br />銆銆路WS_DISABLED 紱佺敤紿楀彛錛屽垱寤哄垵濮嬬姸鎬佷負鐏拌壊涓嶅彲鐢ㄧ殑鎸夐挳鏃朵嬌鐢?br />銆銆路WS_TABSTOP 鍙敤Tab閿夋嫨
銆銆路WS_GROUP 鎴愮粍錛岀敤浜庢垚緇勭殑鍗曢夋寜閽腑鐨勭涓涓寜閽?br />
銆銆鎸夐挳椋庢牸錛?br />
銆銆路BS_PUSHBUTTON 涓嬪帇寮忔寜閽紝涔熷嵆鏅氭寜閽?br />銆銆路BS_AUTORADIOBUTTON 鍚嚜鍔ㄩ変腑鐘舵佺殑鍗曢夋寜閽?br />銆銆路BS_RADIOBUTTON 鍗曢夋寜閽紝涓嶅父鐢?br />銆銆路BS_AUTOCHECKBOX 鍚嚜鍔ㄩ変腑鐘舵佺殑澶嶉夋寜閽?br />銆銆路BS_CHECKBOX 澶嶉夋寜閽紝涓嶅父鐢?br />銆銆路BS_AUTO3STATE 鍚嚜鍔ㄩ変腑鐘舵佺殑涓夋佸閫夋寜閽?br />銆銆路BS_3STATE 涓夋佸閫夋寜閽紝涓嶅父鐢?br />銆
銆銆浠ヤ笂椋庢牸鎸囧畾浜嗗垱寤虹殑鎸夐挳綾誨瀷錛屼笉鑳藉悓鏃朵嬌鐢紝浣嗗繀欏繪湁鍏朵竴銆?br />
銆銆路BS_BITMAP 鎸夐挳涓婂皢鏄劇ず浣嶅浘
銆銆路BS_DEFPUSHBUTTON 璁劇疆涓洪粯璁ゆ寜閽紝鍙敤浜庝笅鍘嬪紡鎸夐挳錛屼竴涓璇濇涓彧鑳芥寚瀹氫竴涓粯璁ゆ寜閽?br />銆銆路rect鎸囧畾鎸夐挳鐨勫ぇ灝忓拰浣嶇疆錛?br />銆銆路pParentWnd鎸囩ず鎷ユ湁鎸夐挳鐨勭埗紿楀彛錛屼笉鑳戒負NULL錛?br />銆銆路nID鎸囧畾涓庢寜閽叧鑱旂殑ID鍙鳳紝鐢ㄤ笂涓姝ュ垱寤虹殑ID鍙楓?br />
銆銆涓嶅悓鎺т歡綾葷殑Create()鍑芥暟鐣ユ湁涓嶅悓錛屽彲鍙傝冪浉鍏寵祫鏂欍?br />
銆銆渚嬶細p_MyBut->Create( "鍔ㄦ佹寜閽?, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, CRect(20,10,80,40), this, IDC_MYBUTTON );
榪欐牱錛屾垜浠氨鍦ㄥ綋鍓嶅璇濇涓殑(20,10)澶勫垱寤轟簡瀹?0錛岄珮30錛屾寜閽枃瀛椾負鈥滃姩鎬佹寜閽濈殑涓嬪帇寮忔寜閽?br />
銆銆涓轟簡浣垮垱寤鴻繃紼嬫洿鏂逛究鏄撶敤錛屾垜瀹氫箟浜嗗涓嬪嚱鏁幫細

CButton* CTextEditorView::NewMyButton(int nID,CRect rect,int nStyle)
{
CString m_Caption;
m_Caption.LoadString( nID ); //鍙栨寜閽爣棰?br />CButton *p_Button = new CButton();
ASSERT_VALID(p_Button);
p_Button->Create( m_Caption, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON | nStyle, rect, this, nID ); //鍒涘緩鎸夐挳
return p_Button;
}

銆銆鍏朵腑m_Caption.LoadString( nID )鏄粠瀛楃涓茶〃涓鍙栨寜閽枃鏈紝榪欐牱鍦ㄥ垱寤烘寜閽甀D鏃訛紝搴旇鎶婃枃鏈緗ソ錛屽弬鏁皀Style涓洪櫎蹇呴』椋庢牸澶栫殑棰濆椋庢牸銆?br />
銆銆浠ヤ笅錛屾垜璋冪敤璇ュ嚱鏁板垱寤轟笁涓寜閽紝騫舵寚瀹氱涓涓寜閽負榛樿鎸夐挳錛屾寜閽殑ID宸查鍏堣緗ソ浜嗭細

CButton *p_MyBut[3];
p_MyBut[0] = NewMyButton( ID_MYBUT1, CRect(10,20,50,35), BS_DEFPUSHBUTTON );
p_MyBut[1] = NewMyButton( ID_MYBUT2, CRect(55,20,95,35), 0 );
p_MyBut[2] = NewMyButton( ID_MYBUT3, CRect(100,20,140,35), 0 );

銆銆浜屻佸姩鎬佹帶浠剁殑鍝嶅簲錛?br />
銆銆鍔ㄦ佹帶浠剁殑鍝嶅簲鍑芥暟涓嶈兘鐢–lassWizard娣誨姞錛屽彧鑳芥墜鍔ㄦ坊鍔犮備粛浠ヤ笂闈㈢殑鎸夐挳涓轟緥錛屾垜浠埗浣滄寜閽殑鍗曞嚮鍝嶅簲鍑芥暟銆?br />
銆銆1.鍦∕ESSAGE_MAP涓坊鍔犲搷搴斿嚱鏁幫細

銆銆MESSAGE_MAP琛ㄤ腑瀹氫箟浜嗘秷鎭搷搴斿嚱鏁幫紝鍏舵牸寮忎負錛氭秷鎭悕(ID,鍑芥暟鍚?錛屽綋鎴戜滑鐢–lassWizard娣誨姞鍑芥暟鏃訛紝浼氳嚜鍔ㄦ坊鍔犲湪AFX_MSG_MAP鎷搗鐨勫尯闂村唴錛屽錛?br />
BEGIN_MESSAGE_MAP(CTextEditorView, CFormView)
//{{AFX_MSG_MAP(CTextEditorView)
ON_BN_CLICKED(IDC_ICONBUT0, OnIconbut0)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

銆銆鎵嬪伐娣誨姞鏃朵笉瑕佹坊鍔犲埌AFX_MSG_MAP鍖洪棿鍐咃紝浠ラ槻ClassWizard涓嶈兘姝e父宸ヤ綔錛屽錛?

BEGIN_MESSAGE_MAP(CTextEditorView, CFormView)
//{{AFX_MSG_MAP(CTextEditorView)
ON_BN_CLICKED(IDC_ICONBUT0, OnIconbut0)
//}}AFX_MSG_MAP
ON_BN_CLICKED(ID_MYBUT1, OnMybut1)
ON_BN_CLICKED(ID_MYBUT2, OnMybut2)
ON_BN_CLICKED(ID_MYBUT3, OnMybut3)
END_MESSAGE_MAP()

銆銆鍏朵腑ON_BN_CLICKED鏄寜閽崟鍑繪秷鎭?br />
銆銆2.鍦ㄥご鏂囦歡涓坊鍔犲嚱鏁板畾涔夛細

銆銆鐢–lassWizard娣誨姞鍑芥暟鏃訛紝浼氬湪澶存枃浠剁殑AFX_MSG鍖洪棿鍐呮坊鍔犲嚱鏁板畾涔夛紝濡傦細

protected:
//{{AFX_MSG(CTextEditorView)
afx_msg void OnIconbut0();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()

銆銆鎴戜滑妯′豢榪欑褰㈠紡錛屽彧鏄妸鍑芥暟瀹氫箟娣誨姞鍒癆FX_MSG鍖洪棿澶栧氨琛屼簡錛?br />
protected:
//{{AFX_MSG(CTextEditorView)
afx_msg void OnIconbut0();
//}}AFX_MSG
afx_msg void OnMybut1();
afx_msg void OnMybut2();
afx_msg void OnMybut3();
DECLARE_MESSAGE_MAP()

銆銆3.緙栧啓娑堟伅鍝嶅簲鍑芥暟錛?br />
銆銆浠ヤ笂鏄妸娑堟伅鍜屽嚱鏁板叧鑱旇搗鏉ヤ簡錛屽叿浣撳湪鍗曞嚮鎸夐挳鍚庡簲鍋氱殑宸ヤ綔鍦ㄥ嚱鏁頒腑瀹屾垚錛?

void CTextEditorView::OnMybut1()
{
MessageBox( "鍝堬紒浣犲崟鍑諱簡鍔ㄦ佹寜閽? );
}
void CTextEditorView::OnMybut2()
{
鈥︹?br />}
void CTextEditorView::OnMybut3()
{
鈥︹?br />}

銆銆闄や簡鎸夐挳鐨勫搷搴斿嚱鏁板錛屼綘榪樺彲浠ョ敤涓婇潰鑾峰緱鐨勬寚閽堣闂寜閽紝濡傦細

銆銆淇敼鎸夐挳鐨勫ぇ灝忓拰浣嶇疆錛歱_MyBut[0]->MoveWindow(鈥︹?;

銆銆淇敼鎸夐挳鏂囨湰錛歱_MyBut[0]->SetWindowText(鈥︹?;

銆銆鏄劇ず/闅愯棌鎸夐挳錛歱_MyBut[0]->ShowWindow(鈥︹?;絳夌瓑銆?br />涓夈佸洖鏀惰祫婧愶細

銆銆鐢變簬鍔ㄦ佹帶浠跺璞℃槸鐢眓ew鐢熸垚鐨勶紝瀹冧笉浼氳紼嬪簭鑷姩閲婃斁錛屾墍浠ラ渶鎵嬪伐閲婃斁銆傚湪鎺т歡涓嶅啀浣跨敤鏃跺彲浠ュ垹闄ゅ畠錛?br />
if( p_MyBut[0] )
delete p_MyBut[0];

銆銆浠ヤ笂灝辨槸鎸夐挳鎺т歡鍔ㄦ佺敓鎴愮殑鏂規硶銆備笅闈紝鍐嶇湅涓涓嬪崟閫夋寜閽殑鍔ㄦ佺敓鎴愰棶棰樸?鍥涖佸疄渚嬶細鍗曢夋寜閽粍鐨勫姩鎬佺敓鎴?br />
銆銆鍗曢夋寜閽篃灞炰簬CButton綾伙紝浣嗙敱浜庡崟閫夋寜閽繪槸鎴愮粍浣跨敤鐨勶紝鎵浠ュ畠鍦ㄥ埗浣滃拰浣跨敤涓婁笌鏅氭寜閽湁涓瀹氬尯鍒?br />
銆銆鍋囪鏈変笁涓崟閫夋寜閽粍鎴愪竴緇勶紝鍒濆鏃訛紝絎竴涓崟閫夋寜閽浜庨変腑鐘舵併?br />
銆銆鎴戜滑鍏堟潵鐪嬮潤鎬佸埗浣滄柟娉曪細鍦ㄥ璇濇涓斁緗笁涓崟閫夋寜閽紝璁劇疆灞炴у涓嬶細

銆銆路Radio1灞炴э細Visible銆丟roup銆乀ab stop銆丄uto
銆銆路Radio2灞炴э細Visible銆乀ab stop銆丄uto
銆銆路Radio3灞炴э細Visible銆乀ab stop銆丄uto

銆銆榪欐牱鐨勫睘鎬ц緗氨鎶婁笁涓崟閫夋寜閽垎鎴愪簡涓緇勶紝瀹冧滑涓嬈″彧鑳芥湁涓涓閫変腑錛岃嫢瀵硅瘽妗嗕腑榪樻湁鍏跺畠鎴愮粍鐨勫崟閫夋寜閽紝浣跨敤鏃朵篃浼氫簰涓嶅共鎵般備絾榪欐椂榪樻病鏈変嬌絎竴涓寜閽浜庨変腑鐘舵併?br />
銆銆鎺ョ潃灝辯敤ClassWizard涓鴻繖緇勫崟閫夋寜閽坊鍔犲彉閲忥紝榪欓噷鍙渶涓虹涓涓崟閫夋寜閽坊鍔犲彉閲忓嵆鍙傝鍙橀噺鍚嶄負m_Radio錛岀被鍨嬮変負int鍨嬨傚湪鏋勯犲嚱鏁頒腑ClassWizard鎶妋_Radio鐨勫艱緗負-1錛屾垜浠妸瀹冩敼涓?錛岃繖鏍峰湪榪愯紼嬪簭鏃跺彲浠ョ湅鍒扮涓涓崟閫夋寜閽浜庨変腑鐘舵佷簡銆備箣鍚庯紝榪樺簲璇ョ敤ClassWizard涓轟笁涓崟閫夋寜閽坊鍔犲崟鍑誨搷搴斿嚱鏁幫紝鍦ㄩ噷闈慨鏀筸_Radio鐨勫煎搴斾笁涓崟閫夋寜閽氨鍙互浜嗐?br />
銆銆浠ヤ笂灝辨槸閫氬父鍒朵綔鍗曢夋寜閽粍鐨勫姙娉曪紝鐜版垜浠鏀逛負鍔ㄦ佺敓鎴愶紝涓昏瑕佽В鍐蟲寜閽垎緇勫拰鍗曞嚮鎺у埗闂銆備互涓嬩負鍒朵綔姝ラ錛?br />
銆銆1.瀹氫箟涓変釜鍗曢夋寜閽殑ID錛?br />
銆銆鎵撳紑璧勬簮涓殑鈥淪tring Table鈥濓紝鍦ㄥ叾涓坊鍔犱笁涓狪D鍊鹼細

銆銆路絎竴涓細ID涓篒DC_MYRADIO1錛孋aption涓哄崟閫?
銆銆路絎簩涓細ID涓篒DC_MYRADIO2錛孋aption涓哄崟閫?
銆銆路絎笁涓細ID涓篒DC_MYRADIO3錛孋aption涓哄崟閫?

銆銆鍏朵腑Caption涓烘寜閽笂瑕佹樉紺虹殑鏂囧瓧錛屽彲鏍規嵁闇瑕佽緗?br />
銆銆2.鐢–Button綾葷殑Create()鍑芥暟鐢熸垚涓変釜鍗曢夋寜閽細

銆銆涓烘柟渚胯搗瑙侊紝鍏堝畾涔変竴涓嚱鏁扮敓鎴愬崟閫夋寜閽細

CButton* CTextEditorView::NewMyRadio(int nID,CRect rect,int nStyle)
{
銆CString m_Caption;
銆m_Caption.LoadString( nID ); //鍙栨寜閽爣棰?br />銆CButton *p_Radio = new CButton();
銆ASSERT_VALID(p_Radio);
銆p_Radio->Create( m_Caption, WS_CHILD | WS_VISIBLE | nStyle | WS_TABSTOP | BS_AUTORADIOBUTTON, rect, this, nID ); //鍒涘緩鎸夐挳
銆return p_Radio;
}

銆銆鍑芥暟LoadString()鐢ㄤ簬浠庘淪tring Table鈥濅腑璇誨彇鎸夐挳鏂囨湰錛孋reate()鍑芥暟涓瀹氫簡鍗曢夋寜閽繀欏葷殑灞炴э紝鍏朵腑灝卞寘鎷簡Visible銆乀ab stop銆丄uto灞炴с?br />
銆銆鍙傛暟nID涓哄崟閫夋寜閽甀D鍙鳳紝rect涓哄崟閫夋寜閽昂瀵革紝nStyle涓洪櫎蹇呰灞炴у鐨勫叾瀹冨睘鎬с傝繑鍥炲間負鎸囧悜鏂板緩鎸夐挳鐨勬寚閽堛?br />
銆銆鏈変簡榪欎釜鍑芥暟鍚庯紝鍒涘緩鍗曢夋寜閽粍鏃跺彧瑕佷緷嬈¤皟鐢ㄨ鍑芥暟鍗沖彲錛屽叾涓崟閫夋寜閽粍鐨勭涓涓崟閫夋寜閽繀欏繪寚瀹歐S_GROUP灞炴с?br />
CButton *p_MyRadio[3];
p_MyRadio[0] = NewMyRadio( IDC_MYRADIO1, CRect(15,90,60,105), WS_GROUP );
p_MyRadio[1] = NewMyRadio( IDC_MYRADIO2, CRect(15,108,60,123), 0 );
p_MyRadio[2] = NewMyRadio( IDC_MYRADIO3, CRect(15,126,60,141), 0 );

銆銆3.瀹氫箟鍗曢夋寜閽粍鐨勬帶鍒跺彉閲忥紝璁劇疆絎竴涓崟閫夋寜閽負閫変腑鐘舵侊細

銆銆榪欓噷涓嶈兘鐢–lassWizard娣誨姞鍙橀噺錛屼篃涓嶈鍦―oDataExchange()涓坊鍔犳帶鍒跺彉閲忥紝鍥犱負鍔ㄦ佹帶浠朵竴寮濮嬪茍涓嶅瓨鍦紝鍦―oDataExchange()涓坊鍔犳帶鍒跺彉閲忎細閫犳垚榪愯閿欒銆傝繖閲屾垜浠彧闇鍦ㄥご鏂囦歡涓殢鎰忓畾涔変竴涓猧nt鍨嬪彉閲忎綔涓烘帶鍒跺彉閲忓嵆鍙紝濡傦細

int m_SelRadio;

銆銆鍦ㄦ瀯閫犲嚱鏁頒腑璁劇疆鍏跺垵鍊間負0錛歮_SelRadio = 0;

銆銆鍦ㄤ笂闈㈢殑鍒涘緩鎸夐挳鐨勮鍙ヤ腑錛岀敤SetCheck()鍑芥暟璁劇疆鍒濆閫変腑鐨勬寜閽細

CButton *p_MyRadio[3];
p_MyRadio[0] = NewMyRadio( IDC_MYRADIO1, CRect(15,90,60,105), WS_GROUP );
p_MyRadio[1] = NewMyRadio( IDC_MYRADIO2, CRect(15,108,60,123), 0 );
p_MyRadio[2] = NewMyRadio( IDC_MYRADIO3, CRect(15,126,60,141), 0 );
p_MyRadio[m_SelRadio]->SetCheck(1); //璁劇疆絎竴涓崟閫変負閫変腑鐘舵?

銆銆鍦⊿etCheck()鍑芥暟涓紝鍙傛暟涓?琛ㄧず璁劇疆涓洪変腑鐘舵侊紝涓?琛ㄧず鏈変腑鐘舵併?br />
銆銆4.娣誨姞榧犳爣鍗曞嚮鍝嶅簲鍑芥暟錛?br />
銆銆榧犳爣鍗曞嚮鏌愬崟閫夋寜閽悗錛屽叾鐘舵佸凡緇忚兘鑷姩鏀瑰彉錛岃繖閲屾垜浠繕闇淇敼鎺у埗鍙橀噺m_SelRadio鐨勫鹼紝浠ヤ究璺熻釜閫変腑鐨勫崟閫夋寜閽?br />
銆銆棣栧厛鍦∕ESSAGE_MAP涓妸榧犳爣鍗曞嚮娑堟伅涓庡搷搴斿嚱鏁拌仈緋昏搗鏉ワ細

BEGIN_MESSAGE_MAP(CTextEditorView, CFormView)
//{{AFX_MSG_MAP(CTextEditorView)
ON_BN_CLICKED(IDC_ICONBUT0, OnIconbut0) //ClassWizard鍦ㄦ澶勬坊鍔?br />//}}AFX_MSG_MAP
ON_BN_CLICKED(IDC_MYRADIO1, OnMyRadio1) //鍗曢夋寜閽?
ON_BN_CLICKED(IDC_MYRADIO2, OnMyRadio2) //鍗曢夋寜閽?
ON_BN_CLICKED(IDC_MYRADIO3, OnMyRadio3) //鍗曢夋寜閽?
END_MESSAGE_MAP()

銆銆鐒跺悗鍦ㄥご鏂囦歡鐨凪ESSAGE_MAP涓畾涔夊崟鍑誨嚱鏁幫細

protected:
//{{AFX_MSG(CTextEditorView)
afx_msg void OnIconbut0(); //ClassWizard鍦ㄦ澶勬坊鍔?br />//}}AFX_MSG
afx_msg void OnMyRadio1(); //鍗曢夋寜閽?
afx_msg void OnMyRadio2(); //鍗曢夋寜閽?
afx_msg void OnMyRadio3(); //鍗曢夋寜閽?
DECLARE_MESSAGE_MAP()

銆銆榪欓噷娉ㄦ剰涓嶈鎶婂嚱鏁板姞鍦ˋFX_MSG鍖洪棿鍐咃紝浠ラ槻褰卞搷ClassWizard鐨勪嬌鐢ㄣ?br />
銆銆瀹氫箟鍏蜂綋鐨勫搷搴斿嚱鏁幫紙榪欓噷鏄敤鎵嬪伐鍔犲叆鐨勶紝涓嶆槸鐢–lassWizard鍔犲叆鐨勶級錛?br />
//鍗曞嚮鍗曢夋寜閽? void CTextEditorView::OnMyRadio1()
{
m_SelRadio=0;
}

//鍗曞嚮鍗曢夋寜閽? void CTextEditorView::OnMyRadio2()
{
m_SelRadio=1;
}

//鍗曞嚮鍗曢夋寜閽? void CTextEditorView::OnMyRadio3()
{
m_SelRadio=2;
}

銆銆5.鍥炴敹璧勬簮錛?br />
銆銆鍦ㄦ瀽鏋勫嚱鏁頒腑錛屽洖鏀跺垱寤虹殑鍗曢夋寜閽紙涔熷彲浠ュ湪涓嶄嬌鐢ㄥ崟閫夋寜閽椂绔嬪嵆鍥炴敹錛夛細

CTextEditorView::~CTextEditorView()
{
int i;
for( i=0; i<3; i++)
{
if(p_MyRadio[i])
delete p_MyRadio[i];
}
}

銆銆浠ヤ笂灝辨槸鍔ㄦ佹帶浠剁殑鐢熸垚鍜屽搷搴旀柟娉曪紝鍚勭涓嶅悓鐨勬帶浠跺仛娉曠暐鏈変笉鍚岋紝浣嗘濊礬鍜屾楠ら兘鏄被浼肩殑錛屽笇鏈涗互涓婂疄渚嬪浣犺兘澶熸湁鎵甯姪銆?img src ="http://www.shnenglu.com/mzty/aggbug/15150.html" width = "1" height = "1" />

姊﹀湪澶╂動 2006-11-14 13:06 鍙戣〃璇勮
]]>
VC 甯歌鐨?08涓棶棰?(杞?http://www.shnenglu.com/mzty/archive/2006/11/14/15149.html姊﹀湪澶╂動姊﹀湪澶╂動Tue, 14 Nov 2006 05:03:00 GMThttp://www.shnenglu.com/mzty/archive/2006/11/14/15149.htmlhttp://www.shnenglu.com/mzty/comments/15149.htmlhttp://www.shnenglu.com/mzty/archive/2006/11/14/15149.html#Feedback2http://www.shnenglu.com/mzty/comments/commentRss/15149.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/15149.html闃呰鍏ㄦ枃

姊﹀湪澶╂動 2006-11-14 13:03 鍙戣〃璇勮
]]>
VC涓姩鎬佹敼鍙樻帶浠跺拰瀵硅瘽妗嗗瓧浣?澶у皬)http://www.shnenglu.com/mzty/archive/2006/11/13/15131.html姊﹀湪澶╂動姊﹀湪澶╂動Mon, 13 Nov 2006 08:47:00 GMThttp://www.shnenglu.com/mzty/archive/2006/11/13/15131.htmlhttp://www.shnenglu.com/mzty/comments/15131.htmlhttp://www.shnenglu.com/mzty/archive/2006/11/13/15131.html#Feedback1http://www.shnenglu.com/mzty/comments/commentRss/15131.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/15131.html聽聽聽聽渚嬪瓙錛?
聽聽聽聽1銆佹敼闈欐佹枃浣撶殑ID錛屽:IDC_STATIC1
聽聽聽聽2銆佹坊鍔犱竴涓狤dit鎺т歡錛屽緩绔嬩竴涓叧鑱旂殑鎺т歡m_editControl銆?
聽聽聽聽3銆佸湪OnInitDialog涓坊鍔犲涓嬩唬鐮侊細
CFont聽*聽f;聽
聽聽聽聽聽f聽
=new聽CFont;聽
聽聽聽聽聽f
->CreateFont(16,聽//聽nHeight聽
聽聽聽聽聽0,聽//聽nWidth聽
聽聽聽聽聽0,聽//聽nEscapement聽
聽聽聽聽聽0,聽//聽nOrientation聽
聽聽聽聽聽FW_BOLD,聽//聽nWeight聽
聽聽聽聽聽TRUE,聽//聽bItalic聽
聽聽聽聽聽FALSE,聽//聽bUnderline聽
聽聽聽聽聽0,聽//聽cStrikeOut聽
聽聽聽聽聽ANSI_CHARSET,聽//聽nCharSet聽
聽聽聽聽聽OUT_DEFAULT_PRECIS,聽//聽nOutPrecision聽
聽聽聽聽聽CLIP_DEFAULT_PRECIS,聽//聽nClipPrecision聽
聽聽聽聽聽DEFAULT_QUALITY,聽//聽nQuality聽
聽聽聽聽聽DEFAULT_PITCH聽|聽FF_SWISS,聽//聽nPitchAndFamily聽
聽聽聽聽聽_T("Arial"));聽//聽lpszFac聽
聽聽聽
聽聽聽聽聽GetDlgItem(IDC_STATIC1)
->SetFont(f);聽
闇瑕佹敞鎰忕殑鏄紝榪欓噷鎴戜滑浣跨敤鐨勬槸CFont鎸囬拡錛岃屼笉鏄櫘閫氱殑CFont灞閮ㄥ彉閲?聽鍦ㄩ潪MFC紼嬪簭錛岄鍏堢敤CreateFont鏉ュ緩绔嬩竴涓瓧浣撳彞鏌勶紝鐒跺悗鍐嶇敤SendMessage鍙戠粰鎺т歡WM_SETFONT娑堟伅錛屽皢寤虹珛鐨勫瓧浣撳彞鏌勮祴鍊艱繃鍘伙紝灝卞彲浠ヤ簡銆?br />
瀹炰緥涓嬭澆:http://www.china-askpro.com/download/CtrlFont.zip


2 浣嗘槸鏁翠釜瀵硅瘽妗嗘垨紿楀彛鐨勫瓧浣撶殑澶у皬,浣跨敤瀵硅瘽妗嗘垨紿楀彛鐨凷etFont()鍑芥暟鍗存病鏈変換浣曠殑浣滅敤.鍙互鍦ㄥ垵濮嬪寲鏃墮亶鍘嗘瘡涓帶浠跺垎鍒緗潵澶勭悊,浣嗚繖閲岃鍙︿竴縐嶄嬌鐢ㄥ洖璋冨嚱鏁扮殑綆鍗曟柟娉?
聽聽 :璋冪敤緋葷粺鐨凙PI:::EnumChildWindows(). ,浼犲叆鍥炶皟鍑芥暟鍜岄噸鏂板畾涔夌殑瀛椾綋.(絎竴涓弬鏁頒笉鐢ㄧ鍟?鏈潵灝辨湁鍟?
)
聽聽 1)鍦ㄦ枃妗h鍥劇粨鏋勪腑CMainFrame::OnCreate().涓皟鐢?:EnumChildWindows().聽瀹炵幇鎵鏈夌獥鍙e拰瀛愮獥鍙e瓧浣撴敼鍙?br />聽聽 2) 鍦ㄥ璇濇鐨凮nInitDialog(). 涓皟鐢?:EnumChildWindows(). 鏀瑰彉瀵硅瘽紿椾笂鐨勬墍鏈夋帶浠?

鍥炶皟鍑芥暟濡備笅:

//聽lParam聽is聽a聽pointer聽to聽CFont聽object
BOOL聽__stdcall聽SetChildFont(HWND聽hwnd,聽LPARAM聽lparam)
{
聽聽CFont聽
*pFont聽=聽(CFont*)lparam;
聽聽CWnd聽
*pWnd聽=聽CWnd::FromHandle(hwnd);
聽聽pWnd
->SetFont(pFont);
聽聽
return聽TRUE;
}

浣跨敤1:

BOOL聽CAboutDlg::OnInitDialog()聽
{
聽聽聽聽CDialog::OnInitDialog();
聽聽聽聽
聽聽聽聽
//聽TODO:聽Add聽extra聽initialization聽here
聽聽::EnumChildWindows(m_hWnd,聽::SetChildFont,聽(LPARAM)g_Font.GetFont());
聽聽聽聽
聽聽聽聽
return聽TRUE;聽聽//聽return聽TRUE聽unless聽you聽set聽the聽focus聽to聽a聽control
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
//聽EXCEPTION:聽OCX聽Property聽Pages聽should聽return聽FALSE
}



浣跨敤2:

int聽CMainFrame::OnCreate(LPCREATESTRUCT聽lpCreateStruct)
{
聽聽聽聽
if聽(CFrameWnd::OnCreate(lpCreateStruct)聽==-1)
聽聽聽聽聽聽聽聽
return-1;
聽聽聽聽
聽聽聽聽
if聽(!m_wndToolBar.CreateEx(this,聽TBSTYLE_FLAT,聽WS_CHILD聽|聽WS_VISIBLE聽|聽CBRS_TOP
聽聽聽聽聽聽聽聽
|聽CBRS_GRIPPER聽|聽CBRS_TOOLTIPS聽|聽CBRS_FLYBY聽|聽CBRS_SIZE_DYNAMIC)聽||
聽聽聽聽聽聽聽聽
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
聽聽聽聽
{
聽聽聽聽聽聽聽聽TRACE0(
"Failed聽to聽create聽toolbar\n");
聽聽聽聽聽聽聽聽
return-1;聽聽聽聽聽聽//聽fail聽to聽create
聽聽聽聽}


聽聽聽聽
if聽(!m_wndStatusBar.Create(this)聽||
聽聽聽聽聽聽聽聽
!m_wndStatusBar.SetIndicators(indicators,
聽聽聽聽聽聽聽聽聽聽
sizeof(indicators)/sizeof(UINT)))
聽聽聽聽
{
聽聽聽聽聽聽聽聽TRACE0(
"Failed聽to聽create聽status聽bar\n");
聽聽聽聽聽聽聽聽
return-1;聽聽聽聽聽聽//聽fail聽to聽create
聽聽聽聽}


聽聽聽聽m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
聽聽聽聽EnableDocking(CBRS_ALIGN_ANY);
聽聽聽聽DockControlBar(
&m_wndToolBar);

聽聽::EnumChildWindows(m_hWnd,聽::SetChildFont,聽(LPARAM)g_Font.GetFont());

聽聽聽聽
return0;
}

(寰堝ソ鐢?涓嶅儚mfc涓殑閭d釜鍨冨溇setfont(),璁劇疆浜嗗璇濇鐨勬病鏈変竴鐐瑰弽搴?)

瀹炰緥涓嬭澆:http://www.codeproject.com/gdi/SetFont/SetFont_demo.zip


3 濡備綍鍦╩fc涓疄鐜?褰撶郴緇熺殑瀛椾綋鍙樺ぇ鐨勬椂鍊?瀵硅瘽妗嗕笂闈㈢殑瀛椾綋涔熺浉搴旂殑鍙樺ぇ?(闈炲父鎰熻阿)

//IconFont
聽聽聽聽LOGFONT聽logFont;
聽聽聽聽
int聽聽size聽=sizeof(LOGFONT);
聽聽聽聽
bool聽isGood聽=聽SystemParametersInfo(SPI_GETICONTITLELOGFONT,size,&logFont,0);
聽聽聽聽
if(isGood聽==true)
聽聽聽聽
{
聽聽聽聽聽聽聽聽CFont聽
*聽f;
聽聽聽聽聽聽聽聽f聽
=new聽CFont;
聽聽聽聽聽聽聽聽聽聽聽聽 const LOGFONT* pFont = new LOGFONT(logFont);
聽聽聽聽聽聽聽聽f
->CreateFontIndirectW(pFont);
聽聽聽聽聽聽聽聽
//::EnumChildWindows(m_hWnd,聽::SetChildFont,聽(LPARAM)f);
聽聽聽聽}


聽聽聽聽
//other聽Font
聽聽聽聽NONCLIENTMETRICS聽ncm聽=new聽NONCLIENTMETRICS();聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽
bool聽isGood聽=聽SystemParametersInfo(SPI_GETNONCLIENTMETRICS,聽sizeof(NONCLIENTMETRICS),聽ref聽ncm,聽0);
聽聽聽聽
if聽(isGood聽==true)
聽聽聽聽
{
聽聽聽聽聽聽聽聽LOGFONT聽logFont2;
聽聽聽聽聽聽聽聽
//logFont2=ncm.lfntCaptionFont);//CaptionFont
聽聽聽聽聽聽聽聽
//logFont2聽=ncm.lfntSMCaptionFont;//CaptionFont_Small
聽聽聽聽聽聽聽聽
//logFont2聽=聽ncm.lfntMenuFont;//MenuFont
聽聽聽聽聽聽聽聽
//logFont2聽=聽ncm.lfntStatusFont;//StatusFont
聽聽聽聽聽聽聽聽logFont2聽=聽ncm.lfntMessageFont;//MessageFont

聽聽聽聽聽聽聽聽CFont聽
*聽f;
聽聽聽聽聽聽聽聽f聽
=new聽CFont;
聽聽聽聽聽聽聽聽聽聽聽聽 const LOGFONT* pFont = new LOGFONT(logFont2);
聽聽聽聽聽聽聽聽f
->CreateFontIndirectW(pFont);
聽聽聽聽聽聽聽聽
//::EnumChildWindows(m_hWnd,聽::SetChildFont,聽(LPARAM)f);

聽聽聽聽}

浠ヤ笂鏄彇寰楃郴緇熷瓧浣撶殑澶у皬,鐒跺悗鍐嶈皟鐢ㄤ笂闈㈢殑絎簩縐嶆柟娉?鍝堝搱鍝堝搱鍝?
紿椾綋涓婄殑鎵鏈夊瓧浣撻兘浼氳窡鐫緋葷粺瀛椾綋鐨勫ぇ灝忔敼鍙?鍝堝搱鍝堝搱!


涓昏浣跨敤API:

SystemParametersinfo璇ュ嚱鏁版煡璇㈡垨璁劇疆緋葷粺綰у弬鏁般傝鍑芥暟涔熷彲浠ュ湪璁劇疆鍙傛暟涓洿鏂扮敤鎴烽厤緗枃浠?/h4>
鍑芥暟鍔熻兘錛氳鍑芥暟鏌ヨ鎴栬緗郴緇熺駭鍙傛暟銆傝鍑芥暟涔熷彲浠ュ湪璁劇疆鍙傛暟涓洿鏂扮敤鎴烽厤緗枃浠躲?br />
聽聽聽聽鍑芥暟鍘熷瀷錛欱00L聽SystemParametersinfo錛圲INT聽uiAction錛孶INT聽uiParam錛孭VOID聽pvParam錛孶INT聽fWinlni錛夛紱

聽聽聽聽鍙傛暟錛?br />
聽聽聽聽uiAction錛氳鍙傛暟鎸囧畾瑕佹煡璇㈡垨璁劇疆鐨勭郴緇熺駭鍙傛暟銆傚叾鍙栧煎涓嬶紱

聽聽聽聽SPI_GETACCESSTIMEOUT錛氭绱笌鍙闂壒鎬х浉鍏寵仈鐨勮秴鏃舵鐨勪俊鎭紝PvParam鍙傛暟蹇呴』鎸囧悜鏌愪釜ACCESSTIMEOUT緇撴瀯浠ヨ幏寰椾俊鎭紝騫跺皢璇ョ粨鏋勪腑鐨刢bSjze鎴愬憳鍜寀lParam鍙傛暟鐨勫艱涓簊izeof錛圓CCESSTIMEOUT錛夈?br />
聽聽聽聽SPI_GETACTIVEWINDOWTRACKING錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣殑鐗堟湰銆傚畠琛ㄧず鏄惁鎵撳紑媧誨姩紿楀彛璺熻釜錛堟縺媧昏紿楀彛鏃墮紶鏍囩疆涓哄紑鐘舵侊級錛宲vParam鍙傛暟蹇呴』鎸囧悜涓涓狟OOL鍨嬪彉閲忥紙鎵撳紑鏃舵帴鏀跺間負TRUE錛屽叧闂椂涓篎ALSE錛夈?br />
聽聽聽聽SPI_GETACTIVEWNDTRKZORDER錛涚敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傚畠琛ㄧず閫氳繃媧誨姩紿楀彛璺熻釜寮鍏蟲縺媧葷殑紿楀彛鏄惁瑕佺疆浜庢渶欏跺眰銆俻vParam鍙傛暟蹇呴』鎸囧悜涓涓狟OOL鍨嬪彉閲忥紝濡傛灉瑕佺疆浜庨《灞傦紝閭d箞璇ュ彉閲忕殑鍊間負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETACTIVEWNDTRKTIMEOUT錛氱敤浜嶹indows聽98鍜屄燱indows聽NT聽5.0鍙婁互鍚庣増鏈傚畠鎸囩ず媧誨姩紿楀彛璺熻釜寤惰繜閲忥紝鍗曚綅涓烘縐掋俻vParam鍙傛暟蹇呴』鎸囧悜DWORD綾誨瀷鍙橀噺錛屼互鎺ユ敹鏃墮棿閲忋?br />
聽聽聽聽SPI_GETANIMATION錛氭绱笌鐢ㄦ埛媧誨姩鏈夊叧鐨勫姩鐢繪晥鏋溿俻vParam鍙傛暟蹇呴』鎸囧悜ANIMATIOINFO緇撴瀯浠ユ帴鏀朵俊鎭傚茍灝嗚緇撴瀯鐨刢bSize鎴愬憳鍜寀lParam鍙傛暟緗負sizeof錛圓NIMATIONINFO錛夈?br />
聽聽聽聽SPI_GETBEEP錛氳〃紺鴻鍛婅渹楦e櫒鏄惁鏄墦寮鐨勩俻vParam鍙傛暟蹇呴』鎸囧悜涓涓狟OOL綾誨瀷鍙橀噺錛屽鏋滆渹楦e櫒澶勪簬鎵撳紑鐘舵侊紝閭d箞璇ュ彉閲忕殑鍊間負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SpI_GETBORDER錛氭绱㈠喅瀹氱獥鍙h竟鐣屾斁澶у搴︾殑杈圭晫鏀懼ぇ鍥犲瓙銆俻vParam鍙傛暟蹇呴』鎸囧悜涓涓暣鍨嬪彉閲忎互鎺ユ敹璇ュ箋?br />
聽聽聽聽SPI_GETDEFAULTINPUTLANG錛氳繑鍥炵敤浜庣郴緇熺己鐪佽緭鍏ヨ璦鐨勯敭鐩樺竷灞鍙ユ焺銆俻vParam鍙傛暟蹇呴』鎸囧悜涓涓?2浣嶅彉閲忥紝浠ユ帴鏀惰鍊箋?br />
聽聽聽聽SPI_GETCOMBOBOXANIMATION錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傚畠琛ㄧず鐢ㄤ簬緇勫悎鏌滅殑鍔ㄦ墦寮鏁堟灉鏄惁鍏佽銆俻vParam鍙傛暟蹇呴』鎸囧悜涓涓狟OOL鍙橀噺錛屽鏋滃厑璁革紝閭d箞鍙橀噺榪斿洖鍊間負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETDRAGFULLWINDOWS錛氱‘瀹氭槸鍚﹀厑璁告嫋鎷夊埌鏈澶х獥鍙c俻vParam鍙傛暟蹇呴』鎸囧悜BOOL鍙橀噺錛屽鏋滃厑璁革紝榪斿洖鍊間負TRUE錛屽惁鍒欎負FALSE銆傚浜嶹indows聽95緋葷粺錛岃鏍囧織鍙湁鍦ㄥ畨瑁呬簡Windows聽plusl鎵嶆敮鎸併?br />
聽聽聽聽SPI_GETFASTTASKSWITCH錛氳鏍囧織宸蹭笉鐢紒浠ュ墠鐗堟湰鐨勭郴緇熶嬌鐢ㄨ鏍囧織鏉ョ‘瀹氭槸鍚﹀厑璁窤lt錛婽ab蹇熶換鍔″垏鎹€傚浜嶹indows聽95銆乄indows聽98鍜學indows聽NT聽4.0鐗堣岃█錛屽揩閫熶換鍔″垏鎹㈤氬父鏄厑璁哥殑銆?br />
聽聽聽聽SPI_GETFILTERKEYS錛氭绱㈡湁鍏矲ILTERKEYS錛堣繃婊ら敭錛夋槗鐢ㄧ壒寰佷俊鎭俻vParam鍙傛暟蹇呴』鎸囧悜鎺ユ敹淇℃伅鐨刦ilterkeys緇撴瀯錛屽茍灝嗚緇撴瀯涓殑cbSze鎴愬憳鍜寀lParam鍙傛暟鐨勫艱涓簊izeof錛團ILTERKEYS錛夈?br />
聽聽聽聽SPI_GETFONTSMOOTHING錛氳〃紺哄瓧浣撳鉤婊戝鐞嗙壒寰佹槸鍚﹀厑璁搞傝鐗瑰緛浣跨敤瀛椾綋淇濈湡鎶鏈紝閫氳繃鍦ㄤ笉鍚岀伆搴︾駭涓婃秱涓婂儚绱犱嬌瀛椾綋鏇茬嚎鏄懼緱鏇村姞騫蟲粦銆傚弬鏁皃vParam蹇呴』鎸囧悜BOOL綾誨瀷鍙橀噺錛屽鏋滆鐗瑰緛琚厑璁革紝閭d箞榪斿洖鍊間負TRUE錛屽惁鍒欎負FALSE銆傚浜嶹indows聽95緋葷粺錛岃鏍囧織鍙湁鍦ㄥ畨瑁呬簡Windows聽plusl鎵嶆敮鎸併?br />
聽聽聽聽SPI_GETFOREGROUNDFLASHCOUNT錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傚畠琛ㄧず鍦ㄦ嫆緇濆墠鍙板垏鎹㈢敵璇鋒椂緋葷粺闂儊浠誨姟鏉℃寜閽殑嬈℃暟銆傚弬鏁皃vParam蹇呴』鎸囧悜DWORD鍙橀噺錛屼互鎺ユ敹璇ュ箋?br />
聽聽聽聽SPI_GETFOREGROUNDLOCKTIMEOUT錛氱敤浜嶹indows聽NT聽5.O鍙婁互鍚庣増鏈垨Windows聽98銆傚畠琛ㄧず鍦ㄧ郴緇熺姝㈠簲鐢ㄧ▼搴忓己琛屽皢鑷繁榪涘叆鍓嶅彴鏈熼棿鐨勬椂闂撮噺錛屽崟浣嶄負姣錛庡弬鏁皃vParam蹇呴』鎸囧悜DWORD鍙橀噺浠ユ帴鏀舵椂闂村箋?br />
聽聽聽聽SPI_GETGRADIENTCAPTIONS錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傚畠琛ㄧず鏄惁鍏佽鏈夌敤浜庣獥鍙f爣棰樻爮鐨勫炬枩鏁堟灉銆傚弬鏁皃vParam蹇呴』鎸囧悜BOOL鍙橀噺錛屽叾鍊煎湪鍏佽鏃朵負TRUE錛岀姝㈡椂涓篎ALSE銆?br />
聽聽聽聽SPL_GETGRIDGRANULARITY錛氭绱㈡闈㈠ぇ灝忕綉鏍肩殑褰撳墠棰楃矑搴﹀箋傚弬鏁皃Vparam蹇呴』鎸囧悜涓涓暣鍨嬪彉閲忎互鎺ユ敹璇ュ箋?br />
聽聽聽聽SPI_GETHIGHCONTRAST錛氱敤浜嶹indows聽95鍙婃洿楂樼増鏈乄indows聽NT聽5.0鍙婁互鍚庣増鏈傛绱笌HighContrast鏄撶敤鐗瑰緛鏈夊叧鐨勪俊鎭俻vParam鍙傛暟蹇呴』鎸囧悜鐢ㄤ簬鎺ユ敹璇ヤ俊鎭殑HIGHCONTRAST緇撴瀯錛岃緇撴瀯涓殑銆俢bSize鎴愬憳鍜寀lParam鍙傛暟鐨勫煎簲璁句負sizeof錛圢IGHCONTRAST錛夈?/div>
2004-09-10 11:47:30
鍥炲浜? lixiaosan
SPI_GETICONMETRICS錛氭绱笌鍥炬爣鏈夊叧鐨勫害閲忎俊鎭傚弬鏁皃vParam蹇呴』鎸囧悜涓涓狪CONMETRICS緇撴瀯浠ユ帴鏀朵俊鎭傝緇撴瀯涓殑銆俢bSize鎴愬憳鍜寀lParam鍙傛暟鐨勫煎簲璁句負sizeof錛圛CONMETRICS錛夈?br />
聽聽聽聽SPI_GETICONTITLELOGFONT錛氭绱㈠綋鍓嶅浘鏍囨爣棰樺瓧浣撶殑閫昏緫瀛椾綋淇℃伅銆傚弬鏁皍lParam瑙勫畾浜唋ogfont緇撴瀯鐨勫ぇ灝忥紝鍙傛暟pvParam蹇呴』鎸囧悜瑕佸~鍏呯殑Iogfont緇撴瀯銆?br />
聽聽聽聽SPI_GETICONTITLEWRAP錛氱‘瀹氭槸鍚﹀厑璁稿浘鏍囨爣棰樼幆緇曘俻vParam鍙傛暟蹇呴』鎸囧悜涓涓狟OOL綾誨瀷鍙橀噺錛岃鍙橀噺鐨勫煎湪鍏佽鏃朵負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETKEYBOARDDELAY錛氭绱㈤敭鐩橀噸澶嶅嚮閿歡榪熻緗紝璇ュ艱寖鍥翠粠0錛堝ぇ綰?5Oms寤惰繜錛夊埌3錛堝ぇ綰?縐掑歡榪燂級銆備笌璇ヨ寖鍥撮噷姣忎竴涓肩浉鍏崇殑瀹為檯寤惰繜鏃墮棿鍙兘涓庣‖浠舵湁鍏熾俻vParam鍙傛暟蹇呴』鎸囧悜涓涓暣鍨嬪彉閲忎互鎺ユ敹璁劇疆鍊箋?br />
聽聽聽聽SPI_GETKEYBOARDPREF錛氱敤浜嶹indows聽95鍙婁互鍚庣増鏈俉indows聽NT聽5.O鍙婁互鍚庣増鏈傚畠紜畾鐢ㄦ埛鏄惁渚濊禆閿洏鑰岄潪榧犳爣錛屾槸鍚﹁姹傚簲鐢ㄧ▼搴忔樉紺洪敭鐩樻帴鍙o紝浠ュ厤闅愯棌銆俻vParam鍙傛暟蹇呴』鎸囧悜涓涓狟OOL綾誨瀷鍙橀噺錛屽鏋滅敤鎴蜂緷璧栭敭鐩橈紝閭d箞璇ュ彉閲忓彇鍊間負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETKEYBOARDSPEED錛氭绱㈤敭鐩橀噸澶嶅嚮閿熷害璁劇疆鎯呭喌錛岃鍊艱寖鍥翠粠0錛堝ぇ綰?0嬈?縐掞級鑷?1錛堝ぇ綰?5嬈?縐掞級銆傚疄闄呯殑鍑婚敭閫熺巼涓庣‖浠舵湁鍏籌紝鑰屼笖鍙樺姩鐨勭嚎鎬у箙搴︽湁鍙兘楂樿揪20錛呫傚弬鏁皃vParam蹇呴』鎸囧悜DWORD鍙橀噺浠ユ帴鏀惰緗箋?br />
聽聽聽聽SPI_GETLISTBOXSMOOTHSCROLLING錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傝〃紺烘槸鍚﹀厑璁告湁鍒楄〃鏍忕殑騫蟲粦婊氬姩鏁堟灉銆俻vParam鍙傛暟蹇呴』鎸囧悜BOOL鍙橀噺錛屽鏋滃厑璁革紝鍒欒鍊間負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETLDWPOWERACTIVE錛氱‘瀹氭槸鍚﹀厑璁稿睆騫曚繚鎶ょ殑浣庣數鍘嬬姸鎬併傚鏋滃厑璁革紝閭d箞鎸囧悜BOOL鍙橀噺鐨刾vParam鍙傛暟浼氭帴鏀跺埌TRUE鍊鹼紝鍚﹀垯涓篎ALSE銆傚浜嶹indows聽98,璇ユ爣蹇楀16浣嶅拰32浣嶅簲鐢ㄧ▼搴忛兘鏀寔銆?br />
聽聽聽聽瀵逛簬Windows聽95錛岃鏍囧織鍙敮鎸?6浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽NT錛屽湪Windows聽NT聽5.0鍙婁互鍚庣増鏈腑鏀寔32浣嶅簲鐢ㄧ▼搴忥紝瀵?6浣嶅簲鐢ㄧ▼搴忓垯涓嶆敮鎸併?br />
聽聽聽聽SPI_GETLOWPOWERTIMEOUT錛氭绱㈢敤浜庡睆騫曚繚鎶ょ殑浣庣數鍘嬬姸鎬佽秴鏃跺箋俻vParam鍙傛暟蹇呴』鎸囧悜涓涓暣鍨嬪彉閲忥紝浠ユ帴鏀惰鍊箋傚浜嶹indows聽98璇ユ爣蹇楁敮鎸?6浣嶅拰32浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows95錛岃鏍囧織鍙敮鎸?6浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽NT,璇ユ爣蹇楁敮鎸乄indows聽NT聽5.0鍙婁互鍚庣増鏈笂鐨?2浣嶅簲鐢ㄧ▼搴忋備笉鏀寔16浣嶅簲鐢ㄧ▼搴忋?br />
聽聽聽聽SPI_GETMENUDROPALIGNMENT銆傜‘瀹氬脊鍑哄紡鑿滃崟鐩稿浜庣浉搴旂殑鑿滃崟鏉¢」鏄乏瀵歸綈錛岃繕鏄彸瀵歸綈銆佸弬鏁皃vParam蹇呴』鎸囧悜涓涓狟OOL綾誨瀷鍙橀噺錛屽鏋滄槸宸﹀榻愩傞偅涔堣鍙橀噺鍊間負TRUE錛屽惁鍒欎負FALSE銆係PI_GETMINIMIZEDMETRICS錛氭绱㈡渶灝忓寲紿楀彛鏈夊叧鐨勫害閲忔暟鎹俊鎭傚弬鏁皃vParam蹇呴』鎸囧悜MINIMIZEDMETRCS緇撴瀯錛屼互鎺ユ敹淇℃伅銆傝緇撴瀯涓殑cbSize鍜寀lParam鍙傛暟鐨勫煎簲璁句負sizeof錛圡INIMIZEDMETRICS錛夈?br />
聽聽聽聽SPI_GETMOUSE錛氭绱㈤紶鏍囩殑2涓槇鍊煎拰鍔犻熺壒鎬с俻vParam鍙傛暟蹇呴』鎸囧悜涓涓暱搴︿負3鐨勬暣鍨嬫暟緇勶紝鍒嗗埆瀛樺偍姝ゅ箋?br />
聽聽聽聽SPI_GETMOUSEHOVERHEGHT錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈垨Windows聽98銆傝幏寰楀湪TrackMouseEvent浜嬩歡涓紝涓轟駭鐢焀M_MOUSEOVER娑堟伅鑰岄紶鏍囨寚閽堝繀欏誨仠鐣欑殑鐭╁艦妗嗙殑楂樺害,浠ュ儚绱犱負鍗曚綅銆傚弬鏁皃vParam蹇呴』鎸囧悜涓涓猆INT鍙橀噺浠ユ帴鏀惰繖涓珮搴﹀箋?br />
聽聽聽聽SPI_GETMOUSEHOVERTIME錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈乄indows聽98錛岃幏寰楀湪TrackMouseEvent浜嬩歡涓紝涓轟駭鐢焀M_MOUSEOVER娑堟伅鑰岄紶鏍囨寚閽堝繀欏誨仠鐣欏湪鐭╁艦妗嗗唴鐨勬椂闂達紝鍗曚綅涓烘縐掋傚弬鏁皃vParam蹇呴』鎸囧悜涓涓猆INT鍙橀噺浠ユ帴鏀惰鏃墮棿鍊箋?br />
聽聽聽聽SPI_GETMOUSEHOVERWIDTH錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈乄indows聽98銆傝幏寰楀湪TrackMouseEvent浜嬩歡涓紝涓轟駭鐢焀M_MOUSEOVER娑堟伅鑰岄紶鏍囨寚閽堝繀欏誨仠鐣欑殑鐭╁艦妗嗙殑瀹藉害,浠ュ儚绱犱負鍗曚綅銆傚弬鏁皃vParam蹇呴』鎸囧悜涓涓猆INT鍙橀噺浠ユ帴鏀惰繖涓搴﹀箋?br />
聽聽聽聽SPI_GETMOUSEKEYS錛氭绱笌MOUSEKEYS鏄撶敤鐗瑰緛鏈夊叧鐨勪俊鎭紝pvParam鍙傛暟蹇呴』鎸囧悜鏌愪釜MOUSEKEYS緇撴瀯錛屼互鑾峰彇淇℃伅銆傚簲灝嗙粨鏋勭殑cbSize鎴愬憳鍜寀lParam鍙傛暟璁劇疆涓簊izeof錛圡OUSEKEYS錛夈?br />
聽聽聽聽SPI_GETMOUSESPEED錛氱敤浜嶹indows聽NT聽5.0鍙婁互鍚庣増鏈乄indows聽98銆傛绱㈠綋鍓嶉紶鏍囬熷害銆傞紶鏍囬熷害鍐沖畾浜嗛紶鏍囩Щ鍔ㄥ灝戣窛紱伙紝榧犳爣鐨勬寚閽堝皢縐誨姩澶氳繙銆傚弬鏁皃vParam鎸囧悜涓涓暣鍨嬪彉閲忥紝璇ュ彉閲忔帴鏀?錛堟渶鎱級鑷?0錛堟渶蹇級涔嬮棿鐨勬暟鍊箋傜己鐪佸間負浠?0銆傝繖涓煎彲浠ョ敱鏈緇堢敤鎴蜂嬌鐢ㄩ紶鏍囨帶鍒墮潰鏉垮簲鐢ㄧ▼搴忔垨浣跨敤璋冪敤浜哠PI_SETMOUSESPEED鐨勫簲鐢ㄧ▼搴忔潵璁劇疆銆?br />
聽聽聽聽SPI_GETMOUSETRAILS錛氱敤浜嶹pvParam蹇呴』鎸囧悜涓涓狟OOL綾誨瀷鍙橀噺錛屽鏋滄槸宸﹀榻愩傞偅涔堣鍙橀噺鍊間負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETMINIMIZEDMETRICS錛氭绱㈡渶灝忓寲紿楀彛鏈夊叧鐨勫害閲忔暟鎹俊鎭傚弬鏁皃vParam蹇呴』鎸囧悜MINIMIZEDMETRCS緇撴瀯錛屼互鎺ユ敹淇℃伅銆傝緇撴瀯涓殑cbSize鍜寀lParam鍙傛暟鐨勫煎簲璁句負sizeof錛圡INIMIZEDMETRICS錛夈?br />
聽聽聽聽SPI_GETMOUSE錛氭绱㈤紶鏍囩殑2涓槇鍊煎拰鍔犻熺壒鎬с俻vParam鍙傛暟蹇呴』鎸囧悜涓涓暱搴︿負3鐨勬暣鍨嬫暟緇勶紝鍒嗗埆瀛樺偍姝ゅ箋?br />
聽聽聽聽SPI_GETMOUSEHOVERHEGHT錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈垨Windows聽98銆傝幏寰楀湪TrackMouseEvent浜嬩歡涓紝涓轟駭鐢焀M_MOUSEOVER娑堟伅鑰岄紶鏍囨寚閽堝繀欏誨仠鐣欑殑鐭╁艦妗嗙殑楂樺害,浠ュ儚绱犱負鍗曚綅銆傚弬鏁皃vParam蹇呴』鎸囧悜涓涓猆INT鍙橀噺浠ユ帴鏀惰繖涓珮搴﹀箋?br />
聽聽聽聽SPI_GETMOUSEHOVERTIME錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈乄indows聽98錛岃幏寰楀湪TrackMouseEvent浜嬩歡涓紝涓轟駭鐢焀M_MOUSEOVER娑堟伅鑰岄紶鏍囨寚閽堝繀欏誨仠鐣欏湪鐭╁艦妗嗗唴鐨勬椂闂達紝鍗曚綅涓烘縐掋傚弬鏁皃vParam蹇呴』鎸囧悜涓涓猆INT鍙橀噺浠ユ帴鏀惰鏃墮棿鍊箋?br />
聽聽聽聽SPI_GETMOUSEHOVERWIDTH錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈乄indows聽98銆傝幏寰楀湪TrackMouseEvent浜嬩歡涓紝涓轟駭鐢焀M_MOUSEOVER娑堟伅鑰岄紶鏍囨寚閽堝繀欏誨仠鐣欑殑鐭╁艦妗嗙殑瀹藉害,浠ュ儚绱犱負鍗曚綅銆傚弬鏁皃vParam蹇呴』鎸囧悜涓涓猆INT鍙橀噺浠ユ帴鏀惰繖涓搴﹀箋?br />
聽聽聽聽SPI_GETMOUSEKEYS錛氭绱笌MOUSEKEYS鏄撶敤鐗瑰緛鏈夊叧鐨勪俊鎭紝pvParam鍙傛暟蹇呴』鎸囧悜鏌愪釜MOUSEKEYS緇撴瀯錛屼互鑾峰彇淇℃伅銆傚簲灝嗙粨鏋勭殑cbSize鎴愬憳鍜寀lParam鍙傛暟璁劇疆涓簊izeof錛圡OUSEKEYS錛夈係PI_GETMOUSESPEED錛氱敤浜嶹indows聽NT聽5.0鍙婁互鍚庣増鏈乄indows聽98銆傛绱㈠綋鍓嶉紶鏍囬熷害銆傞紶鏍囬熷害鍐沖畾浜嗛紶鏍囩Щ鍔ㄥ灝戣窛紱伙紝榧犳爣鐨勬寚閽堝皢縐誨姩澶氳繙銆傚弬鏁皃vParam鎸囧悜涓涓暣鍨嬪彉閲忥紝璇ュ彉閲忔帴鏀?錛堟渶鎱級鑷?0錛堟渶蹇級涔嬮棿鐨勬暟鍊箋傜己鐪佸間負浠?0銆傝繖涓煎彲浠ョ敱鏈緇堢敤鎴蜂嬌鐢ㄩ紶鏍囨帶鍒墮潰鏉垮簲鐢ㄧ▼搴忔垨浣跨敤璋冪敤浜哠PI_SETMOUSESPEED鐨勫簲鐢ㄧ▼搴忔潵璁劇疆銆?br />
聽聽聽聽SPI_GETMOUSETRAILS錛氱敤浜嶹indows聽95鍙婃洿楂樼増鏈傚畠鐢ㄦ潵琛ㄧず鏄惁鍏佽MouseTrails錛堥紶鏍囪建榪癸級銆傝鐗瑰緛閫氳繃綆鍗曞湴鏄劇ず榧犳爣杞ㄨ抗騫惰繀閫熸摝闄ゅ畠浠潵鏀瑰杽榧犳爣鐨勫彲瑙佹с傚弬鏁皃rParam蹇呴』鎸囧悜涓涓暣鍨嬪彉閲忔潵鎺ユ敹璇ュ箋傚鏋滆繖涓間負0鎴?錛岄偅涔堣〃紺虹姝㈣鐗瑰緛銆傚鏋滆鍊煎ぇ浜?錛屽垯璇存槑璇ョ壒寰佽鍏佽錛屽茍涓旇鍊艱〃紺哄湪榧犳爣杞ㄨ抗涓婄敾鍑虹殑鍏夋爣鏁扮洰銆傚弬鏁皍lParam涓嶇敤銆?/div>
2004-09-10 11:47:54
鍥炲浜? lixiaosan
SPI_GETNONCLIENTMETRICS錛氭绱笌闈炴渶灝忓寲紿楀彛鐨勯潪瀹㈡埛鍖烘湁鍏崇殑搴﹂噺淇℃伅銆傚弬鏁皃vParam蹇呴』鎸囧悜NONCLIENTMETRICS緇撴瀯錛屼互渚挎帴鏀剁浉搴斿箋傝緇撴瀯鐨勩俢bSize鎴愬憳涓巙lParam鍙傛暟鍊煎簲璁句負sizeof錛圢ONCLIENTMETRICS錛夈傚浜嶹indows聽98錛岃鏍囧織鏀寔16浣嶅拰32浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽95錛岃鏍囧織鍙敮鎸?6浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽NT璇ユ爣蹇楀湪NT聽5.0鍙婁互鍚庣増鏈腑鏀寔32浣嶅簲鐢ㄧ▼搴忥紝涓嶆敮鎸?6浣嶅簲鐢ㄧ▼搴忋?br />
聽聽聽聽SPI_GETPOWEROFFACTIVE錛氱‘瀹氭槸鍚﹀厑璁稿睆騫曚繚鎶や腑鍏崇數銆俆RUE琛ㄧず鍏佽錛孎A鍙傛暟pvParam蹇呴』鎸囧畾SERIALKEYS緇撴瀯鏉ユ帴鏀朵俊鎭傝緇撴瀯涓殑cbSize鎴愬憳鍜寀lParam鍙傛暟鐨勫艱璁句負sizeof錛圫ERIALKEYS錛夈?br />
聽聽聽聽SPI_GETSHOWSOUNDS錛氱‘瀹歋howSounds鏄撶敤鐗規ф爣蹇楁槸寮鎴栨槸鍏熾傚鏋滄槸寮錛岄偅涔堢敤鎴烽渶瑕佷竴涓簲鐢ㄧ▼搴忔潵鍙鍖栧湴琛ㄨ揪淇℃伅錛屽崰鍒欏彧鑳戒互鍚緱瑙佺殑鏂瑰紡鏉ヨ〃杈俱傚弬鏁皃vParam蹇呴』鎸囧悜涓涓狟OOL綾誨瀷鍙橀噺銆傝鍙橀噺鍦ㄨ鐗瑰緛澶勪簬寮鐘舵佹椂榪斿洖TRUE錛屽惁鍒欎負FALSE銆備嬌鐢ㄨ繖涓肩瓑鍚屼簬璋冪敤GetSystemMetrics錛圫M_SHOWSOUNDS錛夈傚悗鑰呮槸鎺ㄨ崘浣跨敤鐨勮皟鐢ㄦ柟寮忋?br />
聽聽聽聽SPI_GETSNAPTODEFBUTTON錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈乄indows聽98錛氱‘瀹毬燬nap-TO-Default-Button錛堣漿鑷崇己鐪佹寜閽級鐗瑰緛鏄惁鍏佽銆傚鏋滃厑璁革紝閭d箞榧犳爣鑷姩縐昏嚦緙虹渷鎸夐挳涓婏紝渚嬪瀵硅瘽妗嗙殑"Ok"鎴?Apply"鎸夐挳銆俻vParam鍙傛暟蹇呴』鎸囧悜Bool綾誨瀷鍙橀噺錛屽鏋滆鐗瑰緛琚厑璁革紝鍒欒鍙橀噺鎺ユ敹鍒癟RUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETSOUNDSENTRY錛氭绱笌SOUNDSENTRY鍙闂壒寰佹湁鍏崇殑淇℃伅銆傚弬鏁皃vParam蹇呴』鎸囧悜SOUNDSENTRY緇撴瀯浠ユ帴鏀朵俊鎭傝緇撴瀯涓殑銆俢bSize鎴栧憳鍜寀lParam鍙傛暟鐨勫艱璁句負sizeof錛圫OUNDSENTRY錛夈?br />
聽聽聽聽SPI_GETSTICKYKEYS錛氭绱笌StickyKeys鏄撶敤鐗瑰緛鏈夊叧鐨勪俊鎭傚弬鏁奧爌vParam蹇呴』鎸囧悜STICKYKEYS緇撴瀯浠ヨ幏鍙栦俊鎭傝緇撴瀯涓殑cbSze鎴愬憳鍙妘lParam鍙傛暟鐨勫奸』璁句負sizeof錛圫TICKYKEYS錛夈?br />
聽聽聽聽SPI_GETSWITCHTASKDISABLE錛氱敤浜嶹indows聽NT聽5.0銆乄indows聽95鍙婁互鍚庣増鏈紝紜畾鏄惁鍏佽Alt錛婽ab鍜孉It錛婨sc浠誨姟鍒囨崲銆傚弬鏁皃vParam蹇呴』鎸囧悜UINT綾誨瀷鍙橀噺錛屽鏋滅姝換鍔″垏鎹紝閭d箞榪斿洖鍊間負1錛屽惁鍒欎負0銆傚湪緙虹渷鎯呭喌涓嬶紝鏄厑璁歌繘琛屼換鍔″垏鎹㈢殑銆?br />
聽聽聽聽SPI_GETTOGGLEKEYS錛氭绱笌ToggleKeys鏄撶敤鐗規ф湁鍏崇殑淇℃伅銆傚弬鏁皃vParam蹇呴』鎸囧悜TOGGLEKEYS緇撴瀯浠ヨ幏鍙栦俊鎭傝緇撴瀯涓殑cbSize鎴愬憳鍜寀lParam鍙傛暟鍊艱璁劇疆sizeof錛圱OGGLEKEYS錛夈?br />
聽聽聽聽SPI_GETWHEELSCROLLLINES錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈乄indows聽98銆傚綋鍓嶈建榪圭悆杞姩鏃訛紝鑾峰彇婊氬姩鐨勮鏁般傚弬鏁皃vParam蹇呴』鎸囧悜UINT綾誨瀷鍙橀噺浠ユ帴鏀惰鏁般傜己鐪佸兼槸3銆?br />
聽聽聽聽SPI_GETWINDOWSEXTENSION錛氬湪Windows聽95涓寚紺虹郴緇熶腑鏄惁瑁呬簡Windows聽Extension鍜學indows聽Plus錛併?br />
聽聽聽聽鍙傛暟ulParam搴旇涓?銆傝屽弬鏁皃vParam鍒欎笉鐢ㄣ傚鏋滃畨瑁呬簡Windows聽Extenson錛岄偅涔堣鍑芥暟榪斿洖TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_GETWORKAREA錛氭绱富鏄劇ず鍣ㄧ殑宸ヤ綔鍖哄ぇ灝忋傚伐浣滃尯鏄寚灞忓箷涓婁笉琚郴緇熶換鍔℃潯鎴栧簲鐢ㄧ▼搴忔闈㈠伐鍏烽伄鐩栫殑閮ㄥ垎銆傚弬鏁皃vParam蹇呴』鎸囧悜RECT緇撴瀯浠ユ帴鏀跺伐浣滃尯鐨勫潗鏍囦俊鎭紝鍧愭爣鏄敤铏氭嫙灞忓箷鍧愭爣鏉ヨ〃紺虹殑銆備負浜嗚幏鍙栭潪涓繪樉紺哄櫒鐨勫伐浣滃尯淇℃伅錛岃璋冪敤GetMonitorlnfo鍑芥暟銆傚弬鏁皍lParam鎸囧畾瀹藉害錛屽崟浣嶆槸鍍忕礌銆?br />
聽聽聽聽SPI_ICONVERTICALSPACING錛氳緗浘鏍囧崟鍏冪殑楂樺害銆傚弬鏁皍lParam鎸囧畾楂樺害錛屽崟浣嶆槸鍍忕礌銆?br />
聽聽聽聽SPI_LANGDRIVER錛氭湭瀹炵幇銆?br />
聽聽聽聽SPI_SCREENSAVERRUNNING錛氭敼鍚嶄負SPI_SETSCREENSAVERRUNNING銆?br />
聽聽聽聽Spl_SETACCESSTIMEOUT錛氳緗笌鍙闂壒鎬ф湁鍏崇殑鏃墮棿闄愬害鍊鹼紝鍙傛暟聽pvParam蹇呴』鎸囧悜鍖呭惈鏂板弬鏁扮殑ACCESSTIMEOUT緇撴瀯錛岃緇撴瀯鐨刢bSize鎴愬憳涓巙lParam鍙傛暟鐨勫艱璁句負sizeof錛圓CCESSTMEOUT錛夈?br />
聽聽聽聽SPI_SETACTIVEWINDOWTRACKING錛氱敤浜嶹indows聽NT聽5.0鍙婁互鍚庣増鏈乄indows聽98銆傝緗椿鍔ㄧ獥鍙h拷韙殑寮鎴栧叧錛屽鏋滄妸鍙傛暟pvParam璁句負TRUE錛屽垯琛ㄧず寮銆俻vParam鍙傛暟涓篎ALSE鏃惰〃紺哄叧銆?br />
聽聽聽聽SPI_SETACTIVEWNDTRKZORDER錛氱敤浜嶹indows聽NT聽5.0鍙婁互鍚庣増鏈乄indows聽98銆傝〃紺烘槸鍚︽妸閫氳繃媧誨姩紿楀彛璺熻釜鑰屾縺媧葷殑紿楀彛鎺ㄨ嚦欏跺眰銆傚弬鏁皃vParam璁句負TRUE琛ㄧず鎺ㄨ嚦欏跺眰錛孎ALSE鍒欒〃紺轟笉鎺ㄨ嚦欏跺眰銆?br />
聽聽聽聽SPI_SETACTIVEWNDTRKTIMEOUT錛氱敤浜嶹lindows聽NT聽5.0鍙婁互鍚庣増鏈乄indows聽98銆傝緗椿鍔ㄧ獥鍙h窡韙歡榪熴?br />
聽聽聽聽鍙傛暟pvParam璁劇疆鍦ㄧ敤榧犳爣鎸囬拡嬋媧葷獥鍙e墠闇寤惰繜鐨勬椂闂撮噺錛屽崟浣嶄負姣銆?br />
聽聽聽聽SPI_SETBEEP錛氬皢璀﹁渹鍣ㄦ墦寮鎴栧叧闂傚弬鏁皍lParam鎸囧畾涓篢RUE鏃惰〃紺烘墦寮錛屼負FALSE鏃惰〃紺哄叧闂?br />
聽聽聽聽SPI_SETBORDER錛氳緗‘瀹氱獥鍙g緝鏀捐竟鐣岀殑杈圭晫鏀懼ぇ鍥犲瓙銆傚弬鏁皍lParam鐢ㄦ潵鎸囧畾璇ュ箋?br />
聽聽聽聽SPI_SETCOMBOBOXANIMATION錛氱敤浜嶹indows聽NT聽5.0鍙婁互鍚庣増鏈拰Windows聽98銆傚厑璁告垨紱佹緇勫悎婊戝姩鎵撳紑鏁堟灉銆傚鏋滆緗畃vParam鍙傛暟涓篢RUE錛屽垯琛ㄧず鍏佽鏈夊炬枩鏁堟灉錛屽鏋滆涓篎ALSE鍒欒〃紺虹姝€?br />
聽聽聽聽SPI_SETCURSORS錛氶噸緗郴緇熷厜鏍囥傚皢ulParam鍙傛暟璁句負0騫朵笖pvParam鍙傛暟璁句負NULL銆?br />
聽聽聽聽SPI_SETDEFAULTINPUTLANG錛氫負緋葷粺Shell錛堝懡浠よ瑙e櫒錛夊拰搴旂敤紼嬪簭璁劇疆緙虹渷鐨勮緭鍏ヨ璦銆傛寚瀹氱殑璇█蹇呴』鏄彲浣跨敤褰撳墠緋葷粺瀛楃闆嗘潵鏄劇ず鐨勩俻vParam鍙傛暟蹇呴』鎸囧悜DWORD鍙橀噺錛岃鍙橀噺鍖呭惈鐢ㄤ簬緙虹渷璇█鐨勯敭鐩樺竷灞鍙ユ焺銆?br />
聽聽聽聽SpI_SETDESKpATTERN錛氶氳繃浣縒indows緋葷粺浠嶹IN.INI鏂囦歡涓璸attern=璁劇疆欏規潵璁劇疆褰撳墠妗岄潰妯″紡銆?br />
聽聽聽聽SPI_SETDESKWALLPAPER錛氳緗闈㈠銆俻vParam鍙傛暟蹇呴』鎸囧悜涓涓寘鍚綅鍥炬枃浠跺悕錛屽茍涓斾互NULL錛堢┖錛夌粨鏉熺殑瀛楃涓層?br />
聽聽聽聽SPI_SETDOUBLECLICKTIME錛氳ulParam鍙傛暟鐨勫間負鐩爣鍙屽嚮鏃墮棿銆傚弻鍑繪椂闂存槸鎸囧弻鍑諱腑鐨勭1嬈″拰絎?嬈$偣鍑諱箣闂寸殑鏈澶ф椂闂達紝鍗曚綅涓烘縐掋備篃鍙互浣跨敤SetDoubleClickTime鍑芥暟鏉ヨ緗弻鍑繪椂闂淬備負鑾峰彇褰撳墠鍙屽嚮鏃墮棿錛岃璋冪敤GetDoubleClickTime鍑芥暟銆?br />
聽聽聽聽SPI_SETDOUBLECLKHEGHT錛氬皢ulParam鍙傛暟鐨勫艱涓哄弻鍑葷煩褰㈠尯鍩熺殑楂樺害銆傚弻鍑葷煩褰㈠尯鍩熸槸鎸囧弻鍑諱腑鐨勭2嬈$偣鍑繪椂榧犳爣鎸囬拡蹇呴』钀藉湪鐨勫尯鍩燂紝榪欐牱鎵嶈兘璁板綍涓哄弻鍑匯?br />
聽聽聽聽SPI_SETDOUBLECLKWIDTH錛氬皢ulParam鍙傛暟鐨勫艱涓哄弻鍑葷煩褰㈠尯鍩熺殑瀹藉害銆?br />
聽聽聽聽SPI_SETDRAGFULLWINDOWS錛氳緗槸鍚﹀厑璁告嫋鑷蟲渶澶х獥鍙c傚弬鏁皍IParam鎸囧畾涓篢RUE鏃惰〃紺轟負鍏佽錛屼負FALSE鍒欎笉鍙傚浜嶹indows聽95錛岃鏍囧織鍙湁鍦ㄥ畨瑁呬簡Windows聽plusl鎵嶆敮鎸併?br />
聽聽聽聽SPI_SETDRAGHEIGHT錛氳緗敤浜庢嫻嬫嫋鎷夋搷浣滆搗鐐圭殑鐭╁艦鍖哄煙鐨勯珮搴︼紝鍗曚綅涓哄儚绱犮傚弬鑰僄ETSYSTEMMETRICS鍑芥暟鐨刵lndex鍙傛暟涓殑SM_CXDRAG鍜孲M_CYDRAG銆?br />
聽聽聽聽SPI_SETDRAGWIDTH錛氳緗敤浜庢嫻嬫嫋鎷夋搷浣滆搗鐐圭殑鐭╁艦鍖哄煙鐨勫搴︼紝鍗曚綅涓哄儚绱犮?br />
聽聽聽聽SPI_SETFASTTASKSWITCH錛氳鏍囧織宸變笉鍐嶄嬌鐢ㄣ備互鍓嶇増鏈殑緋葷粺浣跨敤姝ゆ爣蹇楁潵鍏佽鎴栦笉璁歌繘琛孉lt錛婽ab蹇熶換鍔″垏鎹€傚浜嶹indows聽95銆乄indows聽98鍜學indows聽NT聽4.0錛岄氬父閮藉厑璁歌繘琛屽揩閫熶換鍔″垏鎹€傚弬鑰僑PI_SETSWITCHTASKDISABLE銆?br />
聽聽聽聽SPI_SETFILTERKEYS錛氳緗瓼ilterKeys鏄撶敤鐗規х殑鍙傛暟銆傚弬鏁皃vParam蹇呴』鎸囧悜鍖呭惈鏂板弬鏁扮殑FILTERKEYS緇撴瀯錛岃緇撴瀯涓殑cbSize鎴愬憳鍜屽弬鏁皍lParam鐨勫煎簲璁句負sizeof錛團ILTERKEYS錛夈?br />
聽聽聽聽SPI_SETFONTSMOOTHING錛氬厑璁告垨紱佹鏈夊瓧浣撳鉤婊戠壒鎬с傝鐗規т嬌鐢ㄥ瓧浣撲繚鐪熸妧鏈紝閫氳繃鍦ㄤ笉鍚岀伆搴︾駭涓婃秱鐢誨儚绱犵偣鏉ヤ嬌寰楀瓧浣撴洸綰挎樉寰楁洿鍔犲鉤婊戯紝涓轟簡鍏佽鏈夎鐗規э紝鍙傛暟ulParam搴旇涓篢RUE鍊鹼紝鍚﹀垯涓篎ALSE銆傚浜嶹indows聽95錛屽彧鏈夊湪瀹夎浜哤indows聽plusl鎵嶆敮鎸佽鏍囧織銆?br />
聽聽聽聽SPI_SETFOREGROUNDFLASHCOUNT錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傝緗甋etForegroundWindow鍦ㄦ嫆緇濆墠鍙板垏鎹㈢敵璇鋒椂闂儊浠誨姟鎷︽寜閽殑嬈℃暟銆?/div>
2004-09-10 11:48:50
鍥炲浜? lixiaosan
SPI_SETFOREGROUNDLOCKTIMEOUT錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傚畠鐢ㄦ潵璁劇疆鍦ㄧ敤鎴瘋緭鍏ヤ箣鍚庯紝緋葷粺紱佹搴旂敤紼嬪簭寮鴻灝嗚嚜宸辮繘鍏ュ墠鍙版湡闂寸殑鏃墮棿闀垮害錛屽崟浣嶄負姣銆傚弬鏁皃vParam璁劇疆榪欎釜鏂扮殑鏃墮棿闄愬害鍊箋?br />
聽聽聽聽SPI_SETGRADIENTCAPTIONS錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傚厑璁告垨紱佹紿楀彛鏍囬鏍忔湁鍊炬枩鏁堟灉銆傚鏋滃厑璁稿垯灝嗗弬鏁皃vParam璁劇疆涓篢RUE錛屽惁鍒欒涓篎ALSE銆傛湁鍏沖炬枩鏁堟灉鏂歸潰鏇村淇℃伅錛岃鍙傝僄etSysColor鍑芥暟銆?br />

聽聽聽聽SPI_SETGRIDGRANULARITY錛氬皢妗岄潰緙╂斁鏃剁綉鏍肩殑棰楃矑搴﹀艱緗負鍙傛暟ulParam涓殑鍊箋?br />
聽聽聽聽SPI_SETHANDHELD錛氬唴閮ㄤ嬌鐢紝搴旂敤紼嬪簭涓嶅簲浣跨敤璇ュ箋?br />
聽聽聽聽SPI_SETHIGHCONTRAST錛氱敤浜嶹indows聽95鍙婁互鍚庣増鏈乄indows聽NT聽5.0鍙婁互鍚庣増鏈傝緗瓾ighContrast鍙闂壒鎬х殑鍙傛暟銆傚弬鏁皃vParam蹇呴』鎸囧悜HIGHCONTRAST緇撴瀯錛岃緇撴瀯鍖呭惈鏂扮殑鍙傛暟銆傝緇撴瀯涓殑cbSize鎴愬憳鍙婂弬鏁皍lParam鐨勫艱涓簊izeof錛圚IGHCONTRAST錛夈?br />
聽聽聽聽SPI_SETICONMETRICS錛氳緗笌鍥炬爣鏈夊叧鐨勪俊鎭傚弬鏁皃vParam蹇呴』鎸囧悜鍖呭惈鏂板弬鏁扮殑ICONMETRICS緇撴瀯錛屽彟澶栬繕瑕佸皢鍙傛暟ulParam鍜岃緇撴瀯涓殑cbSize鎴愬憳鐨勫艱緗負sizeof錛圛CONMETRICS錛夈?br />
聽聽聽聽SPI_SETICONS錛氶噸鏂板姞杞界郴緇熷浘鏍囥傚弬鏁皍lParam鐨勫煎簲璁句負0錛岃宲vParam鍙傛暟搴旇涓篘ULL銆?br />
聽聽聽聽SPI_SETICONTITLELOGFONT錛氳緗敤浜庡浘鏍囨爣棰樼殑瀛椾綋銆傚弬鏁皍lParam鎸囧畾涓簂ogfont緇撴瀯鐨勫ぇ灝忥紝鑰屽弬鏁皃vParam蹇呴』鎸囧悜涓涓狶OGFONT緇撴瀯銆?br />
聽聽聽聽SPI_SETICONTITLEWRAP錛氭墦寮鎴栧叧闂浘鏍囨爣棰樻姌琛屽姛鑳姐傝嫢鎯蟲墦寮鎶樿鍔熻兘錛屽垯鎶婂弬鏁皍lParam璁句負TRUE錛屽惁鍒欎負FALSE銆?br />
聽聽聽聽SPI_SETKEYBOARDDELAY錛氳緗敭鐩橀噸澶嶅歡榪熴傚弬鏁皍lParam蹇呴』鎸囧畾涓?錛?錛?鎴?銆傚叾涓?琛ㄧず璁劇疆涓烘渶鐭歡榪燂紙澶х害聽250ms錛?錛岃〃紺烘渶澶у歡榪燂紙澶х害聽1聽縐掞級銆備笌姣忎釜鍊煎搴旂殑瀹為檯鐨勫歡榪熸椂闂存牴鎹‖浠舵儏鍐墊湁鍙兘鏈変簺鍙樺寲銆?br />
聽聽聽聽SPI_SETKEYBOARDPREF錛氱敤浜嶹indows聽95鍙婁互鍚庣増鏈乄indows聽NT聽5.0鍙婁互鍚庣増鏈紝璁劇疆閿洏浼樺厛搴忋傚鏋滅敤鎴蜂緷璧栭敭鐩樿屼笉鏄紶鏍囷紝閭d箞鍙皢鍙傛暟ulParam鎸囧畾涓篢RUE錛屽惁鍒欒涓篎ALSE錛屽茍涓旇姹傚簲鐢ㄧ▼搴忔樉紺鴻屼笉闅愯斀閿洏鎺ュ彛銆?br />
聽聽聽聽SPI_SETKEYBOARDSPEED錛氳緗敭鐩橀噸鍑婚敭閫熷害銆傚弬鏁皍lParam蹇呴』鎸囧畾涓涓粠0鍒?1鐨勫鹼紝鍏朵腑0琛ㄧず璁劇疆鎴愭渶蹇熷害錛堝ぇ綰?0嬈?縐掞級錛?1琛ㄧず璁劇疆涓烘渶浣庨熷害錛堝ぇ綰?銆?嬈?縐掞級錛屽疄闄呯殑閲嶉熺巼涓庣‖浠舵湁鍏籌紝鑰屼笖鍙兘鍙樺姩騫呭害楂樿揪20錛呫傚鏋渦lParam澶т簬31錛岄偅涔堣鍙傛暟浠嶈緗負31銆?br />
聽聽聽聽SPI_SETLANGTOGGLE錛氫負杈撳叆璇█闂村垏鎹㈣緗儹閿泦銆傚弬鏁皍lParam鍜宲vParam涓嶇敤銆傝鍊奸氳繃璇誨彇娉ㄥ唽琛ㄦ潵璁劇疆閿洏灞炴ц〃鍗曚腑鐨勫揩鎹烽敭銆傚湪浣跨敤璇ユ爣蹇椾箣鍓嶅繀欏昏緗敞鍐岃〃錛屾敞鍐岃〃涓殑璺緞鏄?1"=Alt錛媠hift錛?2"=Ctrl+shift錛?3"=none錛堟棤錛夈?br />
聽聽聽聽SPI_SETLISTBOXSMOOTHSCROLLING錛氱敤浜嶹indows聽98鍜學indows聽NT聽5.0鍙婁互鍚庣増鏈傚厑璁告垨涓嶈鍒楄〃鏍忔湁騫蟲粦婊氬姩鏁堟灉銆傚弬鏁皃vParam璁劇疆涓篢RUE琛ㄧず鍏佽鏈夊鉤婊戞粴鍔ㄦ晥鏋滐紝涓篎ALSE鍒欒〃紺虹姝€?br />
聽聽聽聽SPI_SETLOWPOWERACTIVE錛氭縺媧繪垨鍏抽棴浣庣數鍘嬪睆騫曚繚鎶ょ壒鎬с傚弬鏁皍lParam璁句負1琛ㄧず嬋媧伙紝0琛ㄧず鍏抽棴銆傚弬鏁皃vParam蹇呴』璁句負NULL銆傚浜嶹indows聽98,璇ユ爣蹇楁敮鎸?6浣嶅拰32浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽95錛岃鏍囧織鍙敮鎸?6浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽NT錛庤鏍囧織鍙敮鎸丯T聽5.0鍙婁互鍚庣増鏈殑32浣嶅簲鐢ㄧ▼搴忥紝涓嶆敮鎸?6浣嶅簲鐢ㄧ▼搴忋?br />
聽聽聽聽SPI_SETLOWPOWERTIMEOUT錛氱敤浜庤緗綆鐢靛帇灞忓箷淇濇姢涓殑鏃墮棿鍊鹼紙涔熺О瓚呮椂鍊鹼紝鍗沖湪瓚呰繃鏌愪竴鏃墮棿孌靛悗鑷姩榪涜灞忓箷淇濇姢錛夛紝鍗曚綅涓虹銆倁IParam鍙傛暟鐢ㄦ潵鎸囧畾榪欎釜鏂板箋傚弬鏁皃vParam蹇呴』涓篘ULL銆傚浜嶹indows98錛岃鏍囧織鏀寔16浣嶅拰32浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽95錛岃鏍囧織鍙敮鎸?6浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽NT璇ユ爣蹇楀彧鏀寔NT聽5.0鍙婁互鍚庣増鏈殑32浣嶅簲鐢ㄧ▼搴忥紝涓嶆敮鎸?6浣嶅簲鐢ㄧ▼搴忋?br />
聽聽聽聽SPI_SETMENUDROPALIGNMENT錛氳緗脊鍑烘垨鑿滃崟鐨勫榻愭柟寮忋傚弬鏁皍lParam鎸囧畾涓篢RUE鏃惰〃紺烘槸鍙沖榻愶紝FALSE鏃朵負宸﹀榻愩?br />
聽聽聽聽SPI_SETMINIMIZEDMETRICS錛氳緗笌鏈灝忓寲紿楀彛鏈夊叧鐨勬暟鎹俊鎭紝鍙傛暟pvParam蹇呴』鎸囧悜鍖呭惈鏂板弬鏁扮殑MINIMIZEDMETRICS緇撴瀯銆傝緇撴瀯涓殑cbSize鎴愬憳涓巙lParam鍙傛暟鐨勫煎簲璁句負sizeof錛圡INMIZEDMETRICS錛夈?br />
聽聽聽聽SPI_SETMOUSE錛氳緗紶鏍囩殑涓や釜闃鍊煎拰鍔犻熺巼銆傚弬鏁皃vParam蹇呴』鎸囧悜涓涓暱搴︿負3鐨勬暟緇勶紝浠ユ寚瀹氳繖浜涘箋傝緇嗚鍙傝僲ouse_event銆?br />
聽聽聽聽SPI_SETMOUSEBUTTONSWAP錛氳皟鎹㈡垨鎭㈠榧犳爣宸﹀彸鎸夐挳鐨勫惈涔夛紝涓篎ALSE鏃惰〃紺烘仮澶嶅師鏉ョ殑鍚箟銆?br />
聽聽聽聽SPI_SETMOUSEHOVERHEGHT錛氱敤浜嶹indows聽98鍜學indows聽NT聽4.0鍙婁互鍚庣増鏈傝緗紶鏍囨寚閽堝仠鐣欏尯鍩熺殑楂樺害錛屼互鍍忕礌涓哄崟浣嶃傞紶鏍囨寚閽堝湪姝ゅ尯鍩熷仠鐣欐槸涓轟簡璁㏕rackMouseEvent浜х敓涓鏉M_MUOSEHOVER娑堟伅錛屽弬鏁皍lParam鐢ㄦ潵璁劇疆姝ら珮搴﹀箋?/div>
2004-09-10 11:49:17
鍥炲浜? lixiaosan
SPI_SETMOUSEHOVERTIME錛氱敤浜嶹indows聽98鍜學indows聽NT聽4.0鍙婁互鍚庣増鏈傝緗紶鏍囨寚閽堜負浜嗚TrackMouseEvent浜х敓WM_MOUSEHOVER浜嬩歡鑰屽湪鍋滅暀鍖哄煙搴斿仠鐣欑殑鏃墮棿銆傝鏍囧織鍙湁鍦ㄥ皢璋冪敤dwHoverTime鍙傛暟涓殑HOVER_DEFAULT鍊間紶閫佸埌TrackMouseEvent鏃舵墠浣跨敤銆傚弬鏁皍lParam璁劇疆榪欎釜鏂扮殑鏃墮棿鍊箋?br />
聽聽聽聽SPI_SETMOUSEHOVERWIDTH錛氱敤浜嶹indows聽98鍜學indows聽NT聽4.0鍙婁互鍚庣増鏈傝緗紶鏍囨寚閽堝仠鐣欏尯鍩熺殑瀹藉害錛屼互鍍忕礌涓哄崟浣嶃傚弬鏁皍lParam璁劇疆璇ユ柊鍊箋?br />
聽聽聽聽SPI_SETMOUSEKEYS錛氳緗甅ouseKeys鏄撶敤鐗規х殑鍙傛暟銆傚弬鏁皃vParam蹇呴』鎸囧悜鍖呭惈鏂板弬鏁扮殑MOUSEKEYS緇撴瀯銆傜粨鏋勪腑鐨刢bSize鎴愬憳涓庡弬鏁皍lParam鐨勫煎簲璁句負sizeof錛圡OUSEKEYS錛夈?br />
聽聽聽聽SPI_SETMOUSESPEED錛氱敤浜嶹indows聽NT聽5.0鍙婁互鍚庣殑鐗堟湰鍜學indows聽98錛岃緗綋鍓嶉紶鏍囬熷害銆傚弬鏁皃vParam蹇呴』鎸囧悜涓涓?錛堟渶鎱級鑷?0錛堟渶蹇級涔嬮棿鐨勬暣鏁般傜己鐪佸兼槸10銆備竴鑸彲浠ヤ嬌鐢ㄩ紶鏍囨帶鍒墮潰鏉垮簲鐢ㄧ▼搴忔潵璁劇疆璇ュ箋?br />
聽聽聽聽SPI_SETMOUSETRAILS錛氱敤浜嶹indows聽95鍙婁互鍚庣増鏈細鍏佽鎴栫姝㈡湁MoouseTrails錛堥紶鏍囪建榪癸級鐗規с傝鐗規ч氳繃綆鐭湴鏄劇ず榧犳爣鍏夋爣杞ㄨ抗錛屽茍榪呴熷湴鎿﹂櫎瀹冧滑鏉ユ彁楂橀紶鏍囩殑鍙搴︺傜姝㈣鐗規у彲灝嗗弬鏁皍lParam璁句負0鎴?錛屽厑璁告椂,灝唘lParam璁劇疆涓轟竴涓ぇ浜?鐨勬暟鍊鹼紝璇ュ艱〃紺鴻建榪逛腑鐢誨嚭鐨勫厜鏍囦釜鏁般?br />
聽聽聽聽SPI_SETNONCLIENTMETRICS錛氳緗笌闈炴渶灝忓寲紿楀彛鐨勯潪瀹㈠尯鏈夊叧鐨勬暟鎹俊鎭紝鍙傛暟pvParam蹇呴』鎸囧悜NONCLIENTMETRICS緇撴瀯錛岃緇撴瀯鍖呭惈鏂扮殑鍙傛暟銆傚叾鎴愬憳cbSzie鍜屽弬鏁皍lParam鐨勫煎簲璁句負sizeof錛圢ONCLIENTMETRICS錛夈?br />
聽聽聽聽SPI_SETPENWINDOWS錛涚敤浜嶹indows聽95鍙婁互鍚庣増鏈細鎸囧畾鏄惁鍔犺澆絎旂獥鍙o紝褰撳姞杞芥椂錛屽弬鏁皍lParam璁句負TRUE錛屼笉鍔犺澆鏃朵負FALSE銆傚弬鏁皃vParam涓篘ULL銆?br />
聽聽聽聽SPI_SETPOWEROFFACTIVE錛氭縺媧繪垨鍏抽棴灞忓箷淇濇姢鐗規у弬鏁般倁lParam璁句負1琛ㄧず嬋媧伙紝0琛ㄧず鍏抽棴銆傚弬鏁皃vParam蹇呴』涓篘ULL銆傚浜嶹indows聽98錛岃鏍囧織鏀寔16浣嶅拰32浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽95錛岃鏍囧織鍙敮鎸?6浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽NT錛岃鏍囧織鏀寔Windows聽NT聽5.0鍙婁互鍚庣増鏈殑32浣嶅簲鐢ㄧ▼搴忥紝涓嶆敮鎸?6浣嶅簲鐢ㄧ▼搴忋?br />
聽聽聽聽SPI_SETPOWEROFFTIMEOUT錛氳緗敤浜庡叧闂睆騫曚繚鎶ゆ墍闇鐨勬椂闂村鹼紙涔熺О瓚呮椂鍊鹼級銆傚弬鏁皍lParam鎸囧畾璇ュ箋傚弬鏁皃vParam蹇呴』涓篘ULL銆傚浜嶹indows聽98錛庤鏍囧織鏀寔16浣嶅拰32浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽95錛岃鏍囧織鍙敮鎸?6浣嶅簲鐢ㄧ▼搴忋傚浜嶹indows聽NT,璇ユ爣蹇楁敮鎸乄indows聽NT聽5.0鍙婁互鍚庣増鏈笂鐨?2浣嶅簲鐢ㄧ▼搴忥紝涓嶆敮鎸?6浣嶅簲鐢ㄧ▼搴忋?br />
聽聽聽聽SPI_SETSCREENREADER錛涚敤浜嶹indows聽95鍙婁互鍚庣増鏈乄indows聽NT聽5.0鍙婁互鍚庣増鏈紝琛ㄧず灞忓箷瀹¢槄紼嬪簭鏄惁榪愯銆傚弬鏁皍iparm鎸囧畾涓篢RUE琛ㄧず榪愯璇ョ▼搴忥紝FALSE鍒欎笉榪愯銆?br />
聽聽聽聽SPI_SETSCREENSAVERRUNNING錛氱敤浜嶹indows聽95鍙婁互鍚庣増鏈紝鍐呴儴浣跨敤銆傚簲鐢ㄧ▼搴忎笉搴旇浣跨敤姝ゆ爣蹇桽PI_SETSETSCREENSAVETIMEOUT錛氬弬鏁皍lParam鍊間負灞忓箷淇濇姢鍣ㄦ椂闂撮檺搴﹀箋傝鍊兼槸涓涓椂闂撮噺錛屼互縐掍負鍗曚綅錛屽湪灞忓箷淇濇姢鍣ㄦ縺媧諱箣鍓嶏紝緋葷粺搴旇涓鐩存槸絀洪棽鐨勶紝瓚呰繃榪欎釜鍊煎氨嬋媧誨睆騫曚繚鎶ゅ櫒銆?br />
聽聽聽聽SPI_SETSERIALKEYS錛氱敤浜嶹indows聽95鍙婁互鍚庣増鏈細璁劇疆SerialKeys鏄撶敤鐗規х殑鍙傛暟銆傚弬鏁皃vParam蹇呴』鎸囧悜鍖呭惈鏂板弬鏁扮殑SERIALKEYS緇撴瀯錛屽叾鎴愬憳cbSize鍜屽弬鏁皍lParam搴旇涓簊izeof錛圫ERIALKEYS錛夈?br />
聽聽聽聽SPI_SETSHOWSOUNDS錛氬皢ShowSounds鏄撶敤鐗規ц緗負鎵撳紑鎴栧叧闂傚弬鏁皍lParam鎸囧畾涓篢RUE鏃惰〃紺烘墦寮錛孎ALSE琛ㄧず鍏抽棴銆?br />
聽聽聽聽SPI_SETSNAPTODEFBUTTON錛氱敤浜嶹indows聽NT聽4.0鍙婁互鍚庣増鏈乄indows聽98銆傚厑璁告垨紱佹鏈塻nap-to-default-button錛堣煩杞嚦緙虹渷鎸夐挳錛夌壒鎬с傚鏋滃厑璁革紝閭d箞榧犳爣鍏夋爣浼氳嚜鍔ㄧЩ鑷崇己鐪佹寜閽笂錛屼緥濡傚璇濇煖涓殑OK鎴?apply"鎸夐挳銆傚弬鏁皍lParam璁句負TRUE琛ㄧず鍏佽璇ョ壒鎬э紝FALSE琛ㄧず紱佹銆?br />
聽聽聽聽SPI_SETSOUNDSENTRY錛氳緗甋OUNDSENTRY鏄撶敤鐗規х殑鍙傛暟銆傚弬鏁皃vParam蹇呴』鎸囧悜SOUNDSENTRY緇撴瀯錛岃緇撴瀯鍖呭惈鏂板弬鏁幫紝鍏舵垚鍛榗bSize鍜屽弬鏁皍lParam鐨勫煎簲璁句負sizeof錛圫OUNDSENTRY錛夈?br />
聽聽聽聽SPI_SETSTICKYKEYS錛氳緗畇tickykeys鍙闂壒鎬х殑鍙傛暟銆傚弬鏁皃vParam蹇呴』鎸囧悜鍖呭惈鏂板弬鏁扮殑stickykeys緇撴瀯錛屽叾鎴愬憳cbSize鍜寀lParam鍙傛暟鐨勫艱璁句負sizeof錛圫TICKYKEYS錛夈?br />
聽聽聽聽SPI_SETSWITCHTASKDISABLE錛氱敤浜嶹indows聽NT聽5.0鍙婁互鍚庣増鏈紝鍏佽鎴栫姝㈡湁Alt錛婽ab鍜孉lt錛婨sc浠誨姟鍒囨崲鐗規с傚弬鏁皍lParam璁句負1琛ㄧず鍏佽鏈夎鐗規э紝璁句負0鍒欒〃紺虹姝€傜己鐪佹儏鍐典笅鏄厑璁告湁浠誨姟鍒囨崲鐗規х殑銆?br />
聽聽聽聽SPI_SETTOGGLEKEYS錛氳緗畉ogglekeys鍙闂壒鎬х殑鍙傛暟錛屽弬鏁癙vParam蹇呴』鎸囧悜TOGGLEKEYS緇撴瀯錛岃緇撴瀯涓寘鍚柊鐨勫弬鏁般傚叾鎴愬憳cbSize鍜屽弬鏁皍lParam鐨勫艱璁句負sizeof錛坱ogglekeys錛夈?br />
聽聽聽聽SPI_SETWHEELSCROOLLLINES錛氱敤浜嶹indows聽98鍜學indows聽NT聽4.O鍙婁互鍚庣増鏈傝緗綋榧犳爣杞ㄨ抗鐞冭漿鍔ㄦ椂

聽聽聽聽瑕佹粴鍔ㄧ殑琛屾暟錛屾粴鍔ㄧ殑琛屾暟鏄敱鍙傛暟ulParam璁劇疆鐨勶紝璇ヨ鏁版槸鍦ㄩ紶鏍囪建榪圭悆婊氬姩錛屼簳涓旀病鏈変嬌鐢ㄤ慨鏀歸敭鏃剁殑婊氬姩琛屾暟銆傚鏋滆鏁板間負0錛岄偅涔堜笉浼氬彂鐢熸粴鍔紝濡傛灉婊氬姩琛屾暟姣斿彲瑙佸埌鐨勮鏁拌澶э紝灝ゅ叾濡傛灉鏄疻HEEL_PAGESCROLL錛堬純defined聽sa聽UINT_MAX錛夛紝閭d箞婊氬姩鎿嶄綔搴旇琚В閲婃垚鍦ㄦ粴鍔ㄦ潯鐨勪笅涓欏墊垨涓婁竴欏靛尯鐐瑰嚮涓嬈°?br />
聽聽聽聽SPI_SETWORKAREA錛氳緗伐浣滃尯鍩熷ぇ灝忋傚伐浣滃尯鏄寚灞忓箷涓婃病鏈夎緋葷粺浠誨姟鏍忔垨妗岄潰搴旂敤紼嬪簭妗岄潰宸ュ叿閬洊鐨勯儴鍒嗐傚弬鏁皃vParam鏄竴涓寚閽堛傛寚鍚慠ECT緇撴瀯錛岃緇撴瀯瑙勫畾鏂扮殑鐭╁艦宸ヤ綔鍖哄煙錛屽畠鏄互铏氭嫙灞忓箷鍧愭爣鏉ヨ〃杈劇殑銆傚湪澶氭樉紺哄櫒緋葷粺涓紝璇ュ嚱鏁扮敤鏉ヨ緗寘鍚壒瀹氱煩褰㈢殑鏄劇ず鍣ㄥ伐浣滃尯鍩熴傚鏋淧vParam涓篘ULL錛岄偅涔堣鍑芥暟灝嗕富鏄劇ず鍣ㄧ殑宸ヤ綔鍖哄煙璁句負鍏ㄥ睆銆?/div>
2004-09-10 11:49:38
鍥炲浜? lixiaosan
ulParam錛氫笌鏌ヨ鎴栬緗殑緋葷粺鍙傛暟鏈夊叧銆傚叧浜庣郴緇熺駭鍙傛暟鐨勮鎯咃紝璇峰弬鑰僽iAction鍙傛暟銆傚惁鍒欏湪娌℃湁鎸囨槑鎯呭喌涓嬶紝蹇呴』灝嗚鍙傛暟鎸囧畾涓篛銆?br />
聽聽聽聽pvParam錛氫笌鏌ヨ鎴栬緗殑緋葷粺鍙傛暟鏈夊叧銆傚叧浜庣郴緇熺駭鍙傛暟鐨勮鎯咃紝璇峰弬鑰僽iAction鍙傛暟銆傚惁鍒欏湪娌℃湁鎸囨槑鎯呭喌涓嬶紝蹇呴』灝嗚鍙傛暟鎸囧畾涓篘ULL銆?br />
聽聽聽聽fWinlni錛氬鏋滆緗郴緇熷弬鏁幫紝鍒欏畠鐢ㄦ潵鎸囧畾鏄惁鏇存柊鐢ㄦ埛閰嶇疆鏂囦歡錛圥rofile錛夈備害鎴栨槸鍚﹁灝哤M_SETTINGCHANGE娑堟伅騫挎挱緇欐墍鏈夐《灞傜獥鍙o紝浠ラ氱煡瀹冧滑鏂扮殑鍙樺寲鍐呭銆傝鍙傛暟鍙互鏄?鎴栦笅鍒楀彇鍊間箣涓錛?br />
聽聽聽聽SPIF_UPDATEINIFILE錛氭妸鏂扮殑緋葷粺鍙傛暟鐨勮緗唴瀹瑰啓鍏ョ敤鎴烽厤緗枃浠躲?br />
聽聽聽聽SPIF_SENDCHANGED錛氬湪鏇存柊鐢ㄦ埛閰嶇疆鏂囦歡涔嬪悗騫挎挱WM_SETTINGCHANGE娑堟伅銆?br />
聽聽聽聽SPI_SENDWININICHANGE涓幝燬PIF_SENDCHANGE涓鏍楓?br />
聽聽聽聽榪斿洖鍊鹼細濡傛灉鍑芥暟璋冪敤鎴愬姛錛岃繑鍥炲奸潪闆訛細濡傛灉鍑芥暟璋冪敤澶辮觸錛岄偅涔堣繑鍥炲間負闆躲傝嫢鎯寵幏鍙栨洿澶氶敊璇俊鎭紝璇瘋皟鐢℅etLastError鍑芥暟銆?br />
聽聽聽聽澶囨敞錛氳鍑芥暟涓鑸笌搴旂敤紼嬪簭錛屼緥濡傛帶鍒墮潰鏉夸竴璧蜂嬌鐢ㄣ傚畠鍙互鍏佽鐢ㄦ埛瀵筗indows浠繪剰榪涜瀹氬埗銆?br />
聽聽聽聽鐩樺竷灞鍚嶇О鏄粠瀵瑰簲浜庡竷灞鐨?6榪涘埗璇█鏍囪瘑絎﹀紩鐢熻屾潵鐨勩備緥濡傦紝緹庡浗鑻辮錛圲.S.Englisth錛夌殑璇█鏍囪瘑絎︿負"聽0脳0409"錛屽垯涓葷編鍥借嫳璇敭鐩樺竷灞鍛藉悕涓?00000409"鍏朵粬鐨勯敭鐩樺竷灞濡侱votak絳夛紝鍛藉悕涓?00010409"銆?00020409"絳夛紝鍏充簬姝ょ殑鍒楄〃鍙傝MAKELANGID瀹忋?br />
聽聽聽聽Wiows聽CE鎿嶄綔緋葷粺鍙敮鎸佷笅鍒梪iAction鍊鹼細

聽聽聽聽SPI_GETBATTERYIDLETIMEOUT錛氬湪WINDOWS聽CE娌℃湁鍥犵敤鎴鋒搷浣滆屾寕璧蜂箣鍓嶏紝騫茬數姹犵數婧愯兘鍧氭寔緇欑郴緇熶緵鐢電殑鏃墮棿閲忓彲浠ヤ嬌鐢ㄨ鏍囧織寰楀埌銆備互縐掍負鍗曚綅錛屽鏋減vParam涓?錛岄偅涔堣鏍囧織琚拷鐣ャ?br />
聽聽聽聽SPI_GETEXTERNALIDLETIMEOUT錛氬湪聽Windows聽CE娌℃湁鍥犵敤鎴鋒搷浣滆屾寕璧蜂箣鍓嶏紝浜ゆ祦鐢墊簮鑳藉潥鎸佺粰緋葷粺渚涚數鏃墮棿鐨勬椂闂撮噺鍙互浣跨敤璇ユ爣蹇楀緱鍒般傚弬鏁皃vParam鎸囧悜涓涓狣WORD綾誨瀷鍙橀噺錛屼互榪斿洖鏃墮棿鍊鹼紝鍗曚綅涓虹銆傚鏋減vParam涓?錛岄偅涔堣鏍囧織琚拷鐣ャ?br />
聽聽聽聽SPI_GETMOUSE錛氭绱㈤紶鏍囩殑涓や釜闃堝煎拰閫熷害銆?br />
聽聽聽聽SPI_GETOEMINFO錛氳繑鍥炰竴涓瓧絎︿覆錛岃瀛楃涓插寘鍚瀷鍙峰拰鍒墮犲晢鍚嶇О銆傚弬鏁皍lParam鎸囧畾涓簆vParam鍙傛暟涓紦鍐插尯鐨勯暱搴︼紝鍦ㄦ垚鍔熻繑鍥炴椂錛屽弬鏁皃vParam涓寘鍚玌nicode瀛楃闆嗕腑鐨勫瓧絎︿覆銆?br />
聽聽聽聽SPI_GETPLATFORMTYPE錛氳繑鍥炰竴涓寚瀹歐indows聽CE璁懼綾誨瀷鐨勫瓧絎︿覆錛屼緥濡?H/PC"銆傚弬鏁皍lParam瑙勫畾pvParam鍙傛暟緙撳啿鍖虹殑闀垮害錛屽悗鑰呭湪鎴愬姛榪斿洖鏃跺寘鍚竴涓猆nicode瀛楃闆嗕腑鐨勫瓧絎︿覆銆傝瀛楃涓插厑璁歌薄聽H/PC聽EXPLORER涓鏍風殑搴旂敤紼嬪簭鏉ョ‘瀹氳澶囩被鍨嬨?br />
聽聽聽聽SPI_GETWAKEUPDLETIMEOUT錛氬湪鐢ㄦ埛閫氱煡閲嶆柊嬋媧繪煇涓寕璧風殑璁懼涔嬪悗錛屽彲鑾峰彇鐨刉indows聽CE寤剁紦鍝嶅簲鐨勬椂闂撮噺銆傚弬鏁皃vParam鎸囧悜涓涓狣WORD綾誨瀷鍙橀噺浠ヨ繑鍥炴椂闂村鹼紝鍗曚綅涓虹銆傚鏋減vParam鍊間負0閭d箞璇ユ爣蹇楄蹇界暐銆?br />
聽聽聽聽SPI_GETWORKAREA錛氭绱㈠伐浣滃尯澶у皬銆傚伐浣滃尯鏄寚娌℃湁琚換鍔¢伄鐩栫殑灞忓箷閮ㄥ垎銆?br />
聽聽聽聽SPI_SETBATTERYidletimeout錛氬湪Windows聽CE娌℃湁鍥犵敤鎴鋒搷浣滆屾寕璧蜂箣鍓嶏紝鐢墊睜鐢墊簮鑳藉潥鎸佺粰緋葷粺渚涚數鐨勬椂闂撮噺鍙互浣跨敤璇ユ爣蹇楁潵璁劇疆銆傚彧瑕侀敭鐩樻垨瑙︽懜灞忓鍦ㄦ椿鍔ㄧ姸鎬侊紙鏈夎緭鍏ワ級錛岄偅涔圵indows聽CE鎿嶄綔緋葷粺鍙婄數姹犵數婧愪粛灝嗗伐浣溿傚弬鏁皍lParam鎸囧畾瑕佽緗殑鏃墮棿錛屽崟浣嶄負縐掋傚鏋渦lParam璁劇疆涓?錛岄偅涔堣鏍囧織琚拷鐣ャ?br />
聽聽聽聽SPI_SETEXTERNALIDLETIMEOUT錛氬湪Windows聽CE娌℃湁鍥犵敤鎴鋒搷浣滆屾寕璧蜂箣鍓嶏紝浜ゆ祦鐢墊簮鑳藉潥鎸佺粰緋葷粺渚涚數鐨勬椂闂撮噺鍙互浣跨敤璇ユ爣蹇楁潵璁劇疆銆傚彧瑕侀敭鐩樻垨瑙︽懜灞忓箷澶勫湪媧誨姩鐘舵侊紝閭d箞Windows聽CE鎿嶄綔緋葷粺鍙夾C鐢墊簮浠嶅皢宸ヤ綔銆傚弬鏁皍lParam鎸囧畾瑕佽緗殑鏃墮棿錛屽崟浣嶄負縐掋傚鏋渦lParam璁句負0錛岄偅涔堣鏍囧織琚拷鐣ャ係PL_SETMOUSE錛氳緗紶鏍囩殑涓や釜闃堝煎拰閫熷害銆?br />
聽聽聽聽SPI_SETWAKEUPIDLETIMEOUT錛氬湪鐢ㄦ埛閫氱煡閲嶆柊嬋媧繪煇涓寕璧風殑璁懼涔嬪悗錛學indows聽CE寤剁紦鍝嶅簲鐨勬椂闂撮暱搴﹂噺鍙嬌鐢ㄨ鏍囧織鏉ヨ緗傚弬鏁皍lParam鎸囧畾榪欎釜鏃墮棿閲忥紝鍗曚綅涓虹錛屽鏋渦lParam璁劇疆涓?錛岄偅涔堣鏍囧織琚拷鐣ャ?br />
聽聽聽聽SPI_SETWORKAREA璁劇疆宸ヤ綔鍖哄ぇ灝忥紝宸ヤ綔鍖烘槸鎸囨病鏈夎浠誨姟鏉¢伄鐩栫殑灞忓箷閮ㄥ垎銆傚鏋滅敤鏉ヨ幏鍙栧鉤鍙扮被鍨嬫垨OEM淇℃伅涓茬殑pvParam緙撳啿鍖哄お灝忥紝閭d箞璇ュ嚱鏁頒細璋冪敤澶辮觸錛屽茍鍑虹幇閿欒鍊糆RROR_INSUFFICENT_BUFFER銆俉indows聽CE鍙敮鎸佽鍑芥暟鐨刄NICODE鐗堛俉indows聽CE涓嶆敮鎸佸弬鏁癴Winlni鐨勫彇鍊間負SPIF_SENDWININICHANGE鐨勬儏褰€?/div>


]]>vc 浣跨敤鎬葷粨http://www.shnenglu.com/mzty/archive/2006/05/29/7794.html姊﹀湪澶╂動姊﹀湪澶╂動Mon, 29 May 2006 00:52:00 GMThttp://www.shnenglu.com/mzty/archive/2006/05/29/7794.htmlhttp://www.shnenglu.com/mzty/comments/7794.htmlhttp://www.shnenglu.com/mzty/archive/2006/05/29/7794.html#Feedback4http://www.shnenglu.com/mzty/comments/commentRss/7794.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/7794.html 灝嗘枃瀛椾紶閫佸埌鍓創綈?/strong>


璁╂垜浠兂鍍忔妸涓涓狝NSI瀛椾覆浼犻佸埌鍓創綈夸笂錛屽茍涓旀垜浠凡緇忔湁浜嗘寚鍚戣繖涓瓧涓茬殑鎸囨爣(pString)銆傜幇鍦ㄥ笇鏈涗紶閫佽繖涓瓧涓茬殑iLength瀛楀厓錛岃繖浜涘瓧鍏冨彲鑳戒互NULL緇撳熬錛屼篃鍙兘涓嶄互NULL緇撳熬銆?/font>

棣栧厛錛岄氳繃浣跨敤GlobalAlloc鏉ラ厤緗竴涓凍浠ュ偍瀛樺瓧涓茬殑璁板繂浣撳潡錛屽叾涓繕鍖呮嫭涓涓粓姝㈠瓧鍏僋ULL錛?/font>

hGlobal = GlobalAlloc (GHND | GMEM_SHARE, iLength + 1) ;

濡傛灉鏈兘閰嶇疆鍒拌蹇嗕綋鍧楋紝hGlobal鐨勫煎皢涓篘ULL 銆傚鏋滈厤緗垚鍔燂紝鍒欓攣瀹氳繖鍧楄蹇嗕綋錛屽茍寰楀埌鎸囧悜瀹冪殑涓涓寚鏍囷細

pGlobal = GlobalLock (hGlobal) ;

灝嗗瓧涓插鍒跺埌璁板繂浣撳潡涓細

for (i = 0 ; i < wLength ; i++)
     *pGlobal++ = *pString++ ;

鐢辨柤GlobalAlloc鐨凣HND鏃楁爣宸蹭嬌鏁翠釜璁板繂浣撳潡鍦ㄩ厤緗湡闂磋娓呴櫎涓洪浂錛屾墍浠ヤ笉闇瑕佸鍔犵粨灝劇殑NULL 銆備互涓嬪彊榪頒負璁板繂浣撳潡瑙i攣錛?/font>

GlobalUnlock (hGlobal) ;

鐜板湪灝辨湁浜嗚〃紺轟互NULL緇撳熬鐨勬枃瀛楁墍鍦ㄨ蹇嗕綋鍧楃殑璁板繂浣撲唬鍙楓備負浜嗘妸瀹冮佸埌鍓創綈夸腑錛屾墦寮鍓創綈垮茍鎶婂畠娓呯┖錛?/font>

OpenClipboard (hwnd) ;
EmptyClipboard () ;

鍒╃敤CF_TEXT璇嗗埆瀛楁妸璁板繂浣撲唬鍙蜂氦緇欏壀璐寸翱錛屽叧闂壀璐寸翱錛?/font>

SetClipboardData (CF_TEXT, hGlobal) ;
CloseClipboard () ;

宸ヤ綔鍛婁竴孌佃惤銆?/font>


GlobalAlloc 鍙婂叾瀹?/strong>
浠庣敤鎴風殑瑙掑害鏉ョ湅錛學IN32鐨勫唴瀛樼鐞嗘槸闈炲父綆鍗曞拰鏄庝簡鐨勩傛瘡涓涓簲鐢ㄧ▼搴忛兘鏈夎嚜宸辯嫭绔嬬殑4G鍦板潃絀洪棿錛岃繖縐嶅唴瀛樻ā寮忓彨鍋氣滃鉤鍧︹濆瀷鍦板潃妯″紡錛屾墍鏈夌殑孌靛瘎瀛樺櫒鎴栨弿榪扮閮芥寚鍚戝悓鏍風殑璧峰鍦板潃錛屾墍鏈夌殑鍦板潃鍋忕Щ閮芥槸32浣嶇殑闀垮害錛岃繖鏍蜂竴涓簲鐢ㄧ▼搴忔棤欏誨彉鎹㈤夋嫨絎﹀氨鍙互瀛樺彇鑷繁鐨勫杈?G鐨勫湴鍧絀洪棿銆傝繖縐嶅唴瀛樼鐞嗘ā寮忔槸闈炲父綆媧佽屼究浜庣鐞嗙殑錛岃屼笖鎴戜滑鍐嶄笉鐢ㄥ拰閭d簺浠や漢璁ㄥ帉鐨勨渘ear鈥濆拰鈥渇ar鈥濇寚閽堟墦浜ら亾浜嗐傚湪W16涓嬫湁涓ょ涓昏綾誨瀷鐨凙PI錛氬叏灞鍜屽眬閮ㄣ傗滃叏灞鈥濈殑API 鍒嗛厤鍦ㄥ叾浠栫殑孌典腑錛岃繖鏍蜂粠鍐呭瓨瑙掑害鏉ョ湅浠栦滑鏄竴浜涒渇ar鈥濓紙榪滐級鍑芥暟鎴栬呭彨榪滆繃紼嬭皟鐢紝鈥滃眬閮ㄢ滱PI鍙鍜岃繘紼嬬殑鍫嗘墦浜ら亾錛屾墍浠ユ妸瀹冧滑鍙仛鈥渘ear鈥濓紙榪戯級鍑芥暟鎴栬呰繎榪囩▼璋冪敤銆傝屽湪WIN32涓紝榪欎袱縐嶅唴瀛樻ā寮忔槸鐩稿悓鐨勶紝鏃犺鎮ㄨ皟鐢℅lobalAlloc榪樻槸LocalAlloc錛岀粨鏋滈兘鏄竴鏍楓?

鑷充簬鍒嗛厤鍜屼嬌鐢ㄥ唴瀛樼殑榪囩▼閮芥槸涓鏍風殑錛?

聽聽聽 璋冪敤GlobalAlloc鍑芥暟鍒嗛厤涓鍧楀唴瀛橈紝璇ュ嚱鏁頒細榪斿洖鍒嗛厤鐨勫唴瀛樺彞鏌勩?
聽聽聽 璋冪敤GlobalLock鍑芥暟閿佸畾鍐呭瓨鍧楋紝璇ュ嚱鏁版帴鍙椾竴涓唴瀛樺彞鏌勪綔涓哄弬鏁幫紝鐒跺悗榪斿洖涓涓寚鍚戣閿佸畾鐨勫唴瀛樺潡鐨勬寚閽堛?
聽聽聽 鎮ㄥ彲浠ョ敤璇ユ寚閽堟潵璇誨啓鍐呭瓨銆?
聽聽聽 璋冪敤GlobalUnlock鍑芥暟鏉ヨВ閿佸厛鍓嶈閿佸畾鐨勫唴瀛橈紝璇ュ嚱鏁頒嬌寰楁寚鍚戝唴瀛樺潡鐨勬寚閽堟棤鏁堛?
聽聽聽 璋冪敤GlobalFree鍑芥暟鏉ラ噴鏀懼唴瀛樺潡銆傛偍蹇呴』浼犵粰璇ュ嚱鏁頒竴涓唴瀛樺彞鏌勩?
聽聽聽 鍦╓IN32涓偍涔熷彲浠ョ敤鈥淟ocal鈥濇浛浠e唴瀛樺垎閰岮PI鍑芥暟甯︽湁鈥淕lobal鈥濆瓧鏍風殑鍑芥暟涓殑鈥淕lobal鈥濓紝涔熷嵆鐢↙ocalAlloc銆丩ocalLock絳夈?br />聽聽聽 鍦ㄨ皟鐢ㄥ嚱鏁癎lobalAlloc鏃朵嬌鐢℅MEM_FIXED鏍囧織浣嶅彲浠ユ洿榪涗竴姝ョ畝鍖栨搷浣溿備嬌鐢ㄤ簡璇ユ爣蹇楀悗錛孏lobal/LocalAlloc榪斿洖鐨勬槸鎸囧悜宸插垎閰嶅唴瀛樼殑鎸囬拡鑰屼笉鏄彞鏌勶紝榪欐牱涔熷氨涓嶇敤璋冪敤Global/LocalLock鏉ラ攣瀹氬唴瀛樹簡錛岄噴鏀懼唴瀛樻椂鍙鐩存帴璋冪敤Global/LocalFree灝卞彲浠ヤ簡銆?/p>


鍙ユ焺vs鎸囬拡
鍙ユ焺鏄竴縐嶆寚鍚戞寚閽堢殑鎸囬拡銆傛垜浠煡閬擄紝鎵璋撴寚閽堟槸涓縐嶅唴瀛樺湴鍧銆傚簲鐢ㄧ▼搴忓惎鍔ㄥ悗錛岀粍鎴愯繖聽
涓▼搴忕殑鍚勫璞℃槸浣忕暀鍦ㄥ唴瀛樼殑銆傚鏋滅畝鍗曞湴鐞嗚В錛屼技涔庢垜浠彧瑕佽幏鐭ヨ繖涓唴瀛樼殑棣栧湴鍧錛岄偅涔堝氨鍙互闅忔椂鐢ㄨ繖涓湴鍧聽璁塊棶瀵硅薄銆備絾鏄紝濡傛灉鎮ㄧ湡鐨勮繖鏍瘋涓猴紝閭d箞鎮ㄥ氨澶ч敊鐗歸敊浜嗐傛垜浠煡閬擄紝Windows鏄竴聽涓互铏氭嫙鍐呭瓨涓哄熀紜鐨勬搷浣滅郴緇熴傚湪榪欑緋葷粺鐜涓嬶紝Windows鍐呭瓨綆$悊鍣ㄧ粡甯稿湪鍐呭瓨涓潵鍥炵Щ鍔ㄥ璞★紝渚濇鏉ユ弧瓚沖悇縐嶅簲鐢ㄧ▼搴忕殑鍐呭瓨闇瑕併傚璞¤縐誨姩鎰忓懗鐫瀹冪殑鍦板潃鍙樺寲聽浜嗐傚鏋滃湴鍧鎬繪槸濡傛鍙樺寲錛屾垜浠鍒板摢閲屽幓鎵捐瀵硅薄鍛?涓轟簡瑙e喅榪欎釜闂錛學indows鎿嶄綔緋葷粺涓哄悇搴旂敤紼嬪簭鑵懼嚭涓浜涘唴瀛樺偍鍦板潃錛岀敤鏉ヤ笓闂犵櫥璁板悇搴旂敤瀵硅薄鍦ㄥ唴瀛樹腑鐨勫湴鍧鍙樺寲錛岃岃繖涓湴鍧(瀛樺偍鍗曞厓鐨勪綅緗?鏈韓鏄笉鍙樼殑銆俉indows鍐呭瓨綆$悊鍣ㄥ湪縐誨姩瀵硅薄鍦ㄥ唴瀛樹腑鐨勪綅緗悗錛屾妸瀵硅薄鏂扮殑鍦板潃鍛婄煡榪欎釜鍙ユ焺鍦板潃鏉ヤ繚瀛樸傝繖鏍鋒垜浠彧闇璁頒綇榪欎釜鍙ユ焺鍦板潃灝卞彲浠ラ棿鎺ュ湴鐭ラ亾瀵硅薄鍏蜂綋鍦ㄥ唴瀛樹腑鐨勫摢涓綅緗傝繖涓湴鍧鏄湪瀵硅薄瑁呰澆(Load)鏃剁敱緋葷粺鍒嗛厤緇欑殑錛屽綋緋葷粺鍗歌澆鏃?Unload)鍙堥噴鏀劇粰緋葷粺銆傚彞鏌勫湴鍧(紼沖畾)鈫掕杞界潃瀵硅薄鍦ㄥ唴瀛樹腑鐨勫湴鍧鈫掑璞″湪鍐呭瓨涓殑鍦板潃(涓嶇ǔ瀹?鈫掑疄闄呭璞°備絾鏄紝蹇呴』娉ㄦ剰鐨勬槸紼嬪簭姣忔浠庢柊鍚姩錛岀郴緇熶笉鑳戒繚璇佸垎閰嶇粰榪欎釜紼嬪簭鐨勫彞鏌勮繕鏄師鏉ョ殑閭d釜鍙ユ焺錛岃屼笖緇濆ぇ澶氭暟鎯呭喌鐨勭‘涓嶄竴鏍風殑銆傚亣濡傛垜浠妸榪涘叆鐢靛獎闄㈢湅鐢靛獎鐪嬫垚聽鏄竴涓簲鐢ㄧ▼搴忕殑鍚姩榪愯錛岄偅涔堢郴緇熺粰搴旂敤紼嬪簭鍒嗛厤鐨勫彞鏌勬繪槸涓嶄竴鏍鳳紝榪欏拰姣忔鐢德犲獎闄㈠敭緇欐垜浠殑闂ㄧエ鎬繪槸涓嶅悓鐨勪竴涓駭浣嶆槸涓鏍風殑閬撶悊銆偮?
Debug
鏌愬勾錛屾煇鏈堬紝鏌愭棩銆?br />涓烘煇涓涓ぇ鍨嬬▼搴忥紝澧炲姞涓涓ぇ鍨嬪姛鑳姐傜紪璇戯紝榪愯錛屾鏈恒?

璺熻釜涔嬶紝灞呯劧姝誨湪浜嗗涓嬭鍙ワ細
CString str;
鑰屼笖榪樻瀬涓嶇ǔ瀹氾紝榪欐璋冭瘯姝誨湪n琛岋紝涓嬫璋冭瘯姝誨湪m琛屻備絾閮芥槸鍜屽唴瀛樼敵璇鋒湁鍏熾傦紙鐢變簬紼嬪簭寰堝ぇ錛屽叾涓綣佸湴鐢寵鍜岄噴鏀懼唴瀛橈紝澶氬浣跨敤new鍜孋String錛?/p>

鐚滄祴錛氫竴瀹氭槸鍐呭瓨涓嶅鍟︼紝閬傚湪鏌愬璋冪敤鍑芥暟寰楀埌褰撳墠鍓╀綑鐨勭墿鐞嗗唴瀛樻暟閲忓茍浣跨敤MessageBox鏄劇ず銆傛姤鍛婃洶錛氳嚜鐢辯墿鐞嗗唴瀛樿繕鏈?00澶歁銆傞紶鏍囨寜涓婳K閿紝紼嬪簭灞呯劧涓嶆浜嗐傛仼錛燂紵錛?/p>

鍒犻櫎MessageBox()鍑芥暟鈥旀錛佸姞涓奙essageBox()鍑芥暟鈥斾笉姝伙紒鍐嶅垹闄も撴錛屽啀鍔犱笂鈥撲笉姝匯傛檿鍊掞紒

鎹忓憜鍛嗛儊闂蜂笉鐭ラ亾澶氬皯鏃墮棿鍚庯紝鐏靛厜闂儊鈥︹︽妸澶氬鐨刵ew/delete鏀瑰啓涓篏lobalAlloc()/GlobalFree()錛屼竴鍒嘜K銆?/p>

浜嬪悗鍘熷洜鍒嗘瀽錛氫嬌鐢╪ew鍜孋String錛岄綣佺敵璇鳳紝閲婃斁鍐呭瓨錛屼竴瀹氫駭鐢熼浂紕庡唴瀛樺潡銆傚綋浣跨敤MessageBox鐨勬椂鍊欙紝緋葷粺鎺ョ紼嬪簭鐨勮繍琛岋紙鍥犱負瀹冨湪絳夊緟鐫浣犳寜OK鎸夌航錛夛紝瀹冭繖鏃跺欏紑濮嬪洖鏀跺悎騫惰繖浜涢浂紕庣殑鍐呭瓨鍧椼傝繖鏍風▼搴忓氨娌℃湁闂浜嗐傝屽嚱鏁癎lobalAlloc()/GlobalFree()鏈韓灝辨湁鍥炴敹鍚堝茍闆剁鍐呭瓨鐨勫姛鑳姐?/p>

鍙嬫儏鎻愮ず錛氬湪棰戠箒浣跨敤new,CString鐨勫満鍚堬紝寤鴻鎶婃煇浜涳紙澶э級鏁版嵁鍧楃殑鐢寵鐢℅lobalAlloc鏇挎崲銆?br />

c++寮傚父澶勭悊
#include<fstream.h>
#include<iostream.h>
#include<stdlib.h>
void main()
{聽ifstream source("c:\abc.txt"); 聽//鎵撳紑鏂囦歡
聽char line[128];
聽try聽//瀹氫箟寮傚父聽
聽{if (source.fail())
聽聽throw "txt"; 聽//鎶涙幏寮傚父
聽}
聽catch(char * s)聽//瀹氫箟寮傚父澶勭悊
聽{聽cout<<"error opening the file "<<s<<endl;
聽聽exit(1);
聽}
聽while(!source.eof())
聽{聽source.getline(line, sizeof(line));
聽聽cout<<line<<endl;}
聽source.close();
}
///////////////////////////////////////////////////////////
C錛嬶紜寮鍙戜腑甯歌闂

聽聽聽 1錛岀畝榪癡C6涓嬪浣曡繘琛岀▼搴忕殑璋冭瘯銆?/p>

鍦ㄤ富鑿滃崟"Build"涓紝鏈変竴涓猄tart Build鐨勫瓙鑿滃崟錛屽畠涓嬮潰鍖呭惈浜咷o鑿滃崟錛堝揩鎹烽敭涓篎5),閫夋嫨鍚庯紝紼嬪簭灝嗕粠褰撳墠璇彞榪涘叆璋冭瘯榪愯錛岀洿鍒伴亣鍒版柇鐐規垨紼嬪簭緇撴潫銆?/p>

灝嗛紶鏍囩Щ鍔ㄥ埌瑕佽皟璇曠殑浠g爜琛岋紝鍗曞嚮榧犳爣鍙抽敭閫夋嫨鈥淚nsert/Remove Breakpoint鈥濓紝鎴栬呮寜涓婩9錛屽彲浠ュ湪璇ヨ涓婃坊鍔犳柇鐐癸紝姝ゆ椂鏂偣浠g爜琛屽墠闈㈠嚭鐜頒竴涓鑹茬殑鍦堬紝鍐嶆閫夋嫨灝嗘竻闄ゆ柇鐐廣傝繘鍏ヨ皟璇曠姸鎬佸悗錛孌ebug鑿滃崟灝嗗彇浠uild鑿滃崟鍑虹幇鍦ㄨ彍鍗曟爮涓紝瀹冧笅闈㈠寘鍚父鐢ㄧ殑璋冭瘯鎿嶄綔錛屽Step Over錛屽崟姝ヨ繍琛屽茍涓嶈窡韙埌璋冪敤鐨勫嚱鏁板唴閮紱鍏朵粬榪樺寘鎷琒tep Into錛孲tep Out, Stop Debugging絳夎皟璇曟柟娉曘?/p>

聽聽聽 2, 綆榪板湪VC6寤虹珛鐨勫伐紼嬩腑鍚庣紑涓?cpp,.h,.rc,.dsp,.dsw鐨勬枃浠剁殑浣滅敤鏄粈涔?

.cpp鏄簮紼嬪簭浠g爜C錛嬶紜鏂囦歡

.h鏄寘鍚嚱鏁板0鏄庡拰鍙橀噺瀹氫箟鐨勫ご鏂囦歡

.rc鏄畾涔夎祫婧愮殑璧勬簮鑴氭湰鏂囦歡

.dsp鏄伐紼嬫枃浠訛紝璁板綍褰撳墠宸ョ▼鐨勬湁鍏充俊鎭?/p>

.dsw鏄伐浣滃尯鏂囦歡錛屼竴涓伐浣滃尯鍙兘鍖呭惈涓涓垨澶氫釜宸ョ▼

聽聽聽 3, 宸茬煡涓涓璇濇涓婃湁涓涓紪杈戞鎺т歡錛孖D涓篒DC_EDIT1,涓哄叾鍏寵仈浜咰Edit綾誨瀷鐨勫彉閲弇_edit1,浣跨敤涓ょ鏂規硶錛岃鏄庡浣曟敼鍙樼紪杈戞鍐呴儴鐨勬枃鏈負"Hello"錛屽啓鍑虹▼搴忎唬鐮佺殑鐗囨柇銆?/p>

絎竴縐嶆柟娉曪細m_edit1.SetSel(0,-1);聽聽聽聽聽聽聽聽聽聽聽

聽聽聽聽聽聽聽聽聽聽聽聽 m_edit1.ReplaceSel("Hello");聽聽聽聽

絎簩縐嶆柟娉曪細SetWindowText("Hello");聽聽聽聽聽聽

聽聽聽 4, 綆榪頒嬌鐢╓indows API緙栧啓鐨勪竴涓熀鏈殑Windows搴旂敤紼嬪簭妗嗘灦鐨勭粨鏋勩?/p>

Windows API緙栧啓鐨勫熀鏈簲鐢ㄧ▼搴忔鏋惰嚦灝戝簲璇ュ寘鍚▼搴忓叆鍙e嚱鏁癢inMain鍜岀獥鍙e嚱鏁癢ndProc銆傚湪涓誨嚱鏁癢inMain閲岄潰鍖呭惈紿楀彛綾葷殑瀹氫箟鍜屾敞鍐岋紝紿楀彛鐨勫垱寤哄拰鏄劇ず浠ュ強娑堟伅寰幆銆?/p>

聽聽聽 5, 娑堟伅鍦╓indows涓殑鏁版嵁綾誨瀷鏄粈涔堬紝瀹冩湁鍝簺鎴愬憳鍙橀噺錛屽悇鏈変粈涔堝惈涔?/p>

娑堟伅鐨勬暟鎹被鍨嬫槸MSG,瀹冩槸涓涓粨鏋勪綋錛屽叾鎴愬憳鍙橀噺涓昏鍖呮嫭hwnd,琛ㄧず娑堟伅鐨勭獥鍙e彞鏌勶紱message浠h〃娑堟伅鐨勭被鍨嬶紱wParam鍜宭Param鍖呭惈娑堟伅鐨勯檮鍔犱俊鎭紝闅忎笉鍚岀殑娑堟伅鏈夋墍涓嶅悓銆?/p>

聽聽聽 6, Windows鐨勯紶鏍囨秷鎭殑闀垮弬鏁發Param涓庡瓧鍙傛暟wParam鐨勫惈涔夋槸浠涔?/p>

榧犳爣娑堟伅鐨勯暱鍙傛暟lParam鐨勪綆瀛楄妭鍖呭惈浜嗛紶鏍囧厜鏍囦綅緗殑x鍧愭爣鍊鹼紝lParam鐨勯珮瀛楄妭鍖呭惈浜嗛紶鏍囧厜鏍囦綅緗殑y鍧愭爣鍊鹼紱瀛楀弬鏁皐Param鍐呭寘鍚簡鎸囩ず褰撳墠鎸変笅鐨勫悇縐嶈櫄閿姸鎬佺殑鍊箋?/p>

聽聽聽 7, 璇存槑浣跨敤涓涓潪妯℃佸璇濇鐨勬敞鎰忛棶棰樺拰鐢ㄥ埌鐨刉indows API鍑芥暟

浣跨敤涓涓潪妯℃佸璇濇搴旇娉ㄦ剰涓瀹氳鍦ㄦ牱寮忎腑鍖呭惈WS_VISIBLE鎵嶈兘姝e父鏄劇ず錛涘垱寤哄璇濇浣跨敤CreateDialog鍑芥暟錛涙秷鎭驚鐜儴鍒嗗簲璇ヤ嬌鐢↖sDialogMessage榪囨護娑堟伅錛涘叧闂璇濇浣跨敤鍑芥暟DestroyWindow銆?/p>

聽聽聽 8, 綆榪板湪MFC搴旂敤紼嬪簭涓璘pdateData鍑芥暟鐨勪綔鐢ㄥ強鍏跺弬鏁板惈涔変笌浣跨敤鍦哄悎銆?/p>

UpdateData鍙湁涓涓狟OOL綾誨瀷鐨勫弬鏁幫紝UpdateData(FALSE)涓鑸敤浜庡璇濇鎺т歡榪炴帴鐨勫彉閲忓煎埛鏂板睆騫曟樉紺猴紱UpdateData(TRUE)鐢ㄤ簬鑾峰彇灞忓箷鏁版嵁鍒板璇濇鎺т歡榪炴帴鐨勫彉閲忎腑銆?/p>

聽聽聽 9, 鍒椾婦鍒楄〃妗嗘帶浠惰兘澶熸帴鍙楃殑涓変釜娑堟伅綾誨瀷錛屽茍璇存槑鍏朵綔鐢?/p>

LB_ADDSTRING鐢ㄤ簬鍦ㄥ垪琛ㄦ涓姞鍏ヤ竴欏瑰瓧絎︿覆錛汱B_DIR鐢ㄤ簬鍦ㄥ垪琛ㄦ涓垪鍑烘寚瀹氭枃浠訛紱LB_GETTEXT鐢ㄤ簬鑾峰彇鎸囧畾欏圭殑鏂囨湰銆?/p>

聽聽聽 10, 鍦ㄤ竴涓璇濇涓婃坊鍔犱簡涓変釜鍗曢夋寜閽紝瑕佷嬌瀹冧滑涔嬮棿鑷姩瀹炵幇浜掓枼錛屽簲璇ユ敞鎰忎粈涔堥棶棰橈紝鍦╒C鐜涓嬪浣曟搷浣滐紵

瑕佸疄鐜頒竴緇勫崟閫夋寜閽殑鑷姩浜掓枼錛屽簲璇ヨ瀹冧滑鐨勬帶浠禝D鍊艱繛緇紝騫惰緗涓涓崟閫夋寜閽殑Group灞炴э紝鍏朵粬鐨勪笉璁俱?/p>

聽聽聽 11, 綆榪扮敱涓涓枃妗g被媧劇敓鑷繁鐨勬枃妗g被錛屽茍瀹炵幇鏂囨。鐨勫瓨鍙栭渶瑕佸摢浜涙楠ゃ?/p>

棣栧厛涓烘瘡涓涓枃妗g被鍨嬩粠CDocument媧劇敓涓涓浉搴旂殑鏂囨。綾伙紱鐒跺悗涓鴻鏂囨。綾繪坊鍔犳垚鍛樺彉閲忎互淇濆瓨鏁版嵁錛涙渶鍚庨噸杞絊erialize鎴愬憳鍑芥暟浠ュ疄鐜版枃妗f暟鎹殑涓茶鍖栥?/p>

聽聽聽 12, 鍒椾婦瑙嗗浘綾?CView)鐨勪笁涓瓙綾伙紝騫剁畝瑕佽鏄庡叾浣滅敤銆?/p>

CScrollView綾繪彁渚涜鍥劇殑婊氬姩鏄劇ず錛汣EditView綾繪敮鎸佸湪瑙嗗浘涓殑鏂囨湰緙栬緫鎿嶄綔錛汣HtmlView綾繪敮鎸佸湪瑙嗗浘涓樉紺哄拰鎿嶄綔html鏂囦歡銆?/p>

聽聽聽 13, Visual C錛嬶紜 6.0濡備綍榪涘叆璋冭瘯鐘舵侊紝鍦ㄨ皟璇曠姸鎬佷笅鑳藉鏄劇ず鍝簺璋冭瘯紿楀彛錛屽垪涓句笁涓紝鍏朵綔鐢ㄥ垎鍒槸浠涔?

鍚姩璋冭瘯鍚庯紝鍦╒iew鑿滃崟鐨凞ebug Window瀛愯彍鍗曚笅鍙互鎵撳紑涓浜涜緟鍔╄皟璇曠殑紿楀彛

Watch:鏄劇ず瀵熺湅褰撳墠璇彞鍜屽墠闈㈣鍙ヤ腑鍙橀噺鍊肩殑紿楀彛

Call Stack錛氭樉紺哄療鐪嬭皟鐢ㄥ爢鏍堢殑紿楀彛

Memory錛氭樉紺哄療鐪嬪唴瀛樹腑鍐呭鐨勭獥鍙?/p>

聽聽聽 14, 璇存槑浣嶅浘璧勬簮鐨勫垱寤哄強鏄劇ず榪囩▼鐨勬楠わ紝騫剁粰鍑虹浉搴旂殑Windows API鍑芥暟鍚嶃?/p>

棣栧厛瀹氫箟浣嶅浘鍙ユ焺HBITMAP hBitmap;絎簩姝ヤ嬌鐢↙oadBitMap鍔犺澆浣嶅浘錛涚涓夋錛岃皟鐢–reateCompatibleDC鍚戠郴緇熺敵璇峰唴瀛樿澶囩幆澧冨彞鏌勶紝騫惰皟鐢ㄥ嚱鏁癝electObject鎶婁綅鍥鵑夊叆鍐呭瓨璁懼鐜錛涚鍥涙錛岃皟鐢˙itBlt鍑芥暟灝嗕綅鍥句粠鍐呭瓨璁懼鐜杈撳嚭鍒版寚瀹氱殑紿楀彛璁懼鐜涓紝浠庤屽疄鐜版樉紺轟綅鍥俱?/p>

聽聽聽 15, 濡備綍鑾峰彇瀛椾綋鍙ユ焺浠庤屽疄鐜板瓧浣撶殑杈撳嚭錛屽茍緇欏嚭鐩稿簲鐨刉indows API鍑芥暟鍚嶃?/p>

棣栧厛瀹氫箟瀛椾綋鍙ユ焺鍙橀噺HFONT hF;鐒跺悗璋冪敤鍑芥暟GetStockObject鑾峰彇緋葷粺鐨勫瓧浣撳彞鏌勶紝鎴栬呰皟鐢–reateFont寰楀埌鑷畾涔夌殑瀛椾綋鍙ユ焺錛涙渶鍚庤皟鐢⊿electObject鎶婂瓧浣撳彞鏌勯夊叆璁懼鐜銆?/p>

聽聽聽 16, 鍒椾婦涓夌鎸夐挳鐨勭被鍨嬶紝騫惰鏄庡叾浣滅敤鍜屽垱寤烘柟娉曚箣闂寸殑涓嶅悓涔嬪銆?/p>

甯哥敤鐨勬寜閽湁鏅氭寜閽佸崟閫夋寜閽佸閫夋錛屽拰緇勬銆傛櫘閫氭寜閽綔鐢ㄦ槸甯姪鐢ㄦ埛瑙﹀彂鎸囧畾鍔ㄤ綔錛涘崟閫夋寜閽竴鑸悇閫夐」涔嬮棿瀛樺湪浜掓枼鎬э紱澶嶉夋鐢ㄦ潵鏄劇ず涓緇勯夐」渚涚敤鎴烽夋嫨錛屽悇閫夐」涔嬮棿涓嶅瓨鍦ㄤ簰鏂ワ紱緇勬涓昏鐢ㄤ簬鎶婃帶浠跺垎鎴愪笉鍚岀殑緇勫茍鍔犱互璇存槑.

聽聽聽 17, 瑕佷嬌涓涓潤鎬佹帶浠舵樉紺轟竴涓綅鍥懼茍鑳芥帴鍙楃敤鎴瘋緭鍏ワ紝搴旇娉ㄦ剰浠涔堥棶棰樸?/p>

瑕佷嬌闈欐佹帶浠舵樉紺轟綅鍥撅紝蹇呴』璁懼畾鍏墮鏍煎寘鍚玈S_BITMAP錛屽茍鍦ㄥ垱寤洪潤鎬佹帶浠剁獥鍙o紝鍗寵皟鐢–reateWindow鏃舵寚瀹氬茍鍔犺澆浣嶅浘錛涜浣塊潤鎬佹帶浠惰兘澶熸帴鏀剁敤鎴瘋緭鍏ワ紝蹇呴』璁懼畾鍏墮鏍煎寘鍚玈S_NOTIFY銆?br />

VC瀛︿範絎旇

VC瀛︿範絎旇1錛氭寜閽殑浣胯兘涓庣姝?/strong>

鐢–lassWizard鐨凪ember Variables涓烘寜閽畾涔夊彉閲忥紝濡傦細m_Button1錛?br />鍒?br />m_Button1.EnableWindow(true); 浣挎寜閽浜庡厑璁哥姸鎬?br />m_Button1.EnableWindow(false); 浣挎寜閽紱佹錛屽茍鍙樼伆鏄劇ず


VC瀛︿範絎旇2錛氭帶浠剁殑闅愯棌涓庢樉紺?/b>

鐢–Wnd綾葷殑鍑芥暟BOOL ShowWindow(int nCmdShow)鍙互闅愯棌鎴栨樉紺轟竴涓帶浠躲?br />
渚?錛?br />CWnd *pWnd;
pWnd = GetDlgItem( IDC_EDIT1 );聽聽聽聽//鑾峰彇鎺т歡鎸囬拡錛孖DC_EDIT涓烘帶浠禝D鍙?br />pWnd->ShowWindow( SW_HIDE );聽聽聽聽//闅愯棌鎺т歡

渚?錛?br />CWnd *pWnd;
pWnd = GetDlgItem( IDC_EDIT1 );聽聽聽聽//鑾峰彇鎺т歡鎸囬拡錛孖DC_EDIT涓烘帶浠禝D鍙?br />pWnd->ShowWindow( SW_SHOW );聽聽聽聽//鏄劇ず鎺т歡

浠ヤ笂鏂規硶甯哥敤浜庡姩鎬佺敓鎴愭帶浠訛紝铏借鐢ㄦ帶浠剁殑Create鍑芥暟鍙互鍔ㄦ佺敓鎴愭帶浠訛紝浣嗚繖縐嶆帶浠跺緢涓嶅ソ鎺у埗錛屾墍浠ョ敤闅愯棌銆佹樉紺烘柟娉曚笉澶變負涓縐嶆浛浠f墜孌點?br />

VC瀛︿範絎旇3錛氭敼鍙樻帶浠剁殑澶у皬鍜屼綅緗?/b>

鐢–Wnd綾葷殑鍑芥暟MoveWindow()鎴朣etWindowPos()鍙互鏀瑰彉鎺т歡鐨勫ぇ灝忓拰浣嶇疆銆?br />
void MoveWindow(int x,int y,int nWidth,int nHeight);
void MoveWindow(LPCRECT lpRect);
絎竴縐嶇敤娉曢渶緇欏嚭鎺т歡鏂扮殑鍧愭爣鍜屽搴︺侀珮搴︼紱
絎簩縐嶇敤娉曠粰鍑哄瓨鏀句綅緗殑CRect瀵硅薄錛?br />渚嬶細
CWnd *pWnd;
pWnd = GetDlgItem( IDC_EDIT1 );聽聽聽聽//鑾峰彇鎺т歡鎸囬拡錛孖DC_EDIT1涓烘帶浠禝D鍙?br />pWnd->MoveWindow( CRect(0,0,100,100) );聽聽聽聽//鍦ㄧ獥鍙e乏涓婅鏄劇ず涓涓100銆侀珮100鐨勭紪杈戞帶浠?br />
SetWindowPos()鍑芥暟浣跨敤鏇寸伒媧伙紝澶氱敤浜庡彧淇敼鎺т歡浣嶇疆鑰屽ぇ灝忎笉鍙樻垨鍙慨鏀瑰ぇ灝忚屼綅緗笉鍙樼殑鎯呭喌錛?br />BOOL SetWindowPos(const CWnd* pWndInsertAfter,int x,int y,int cx,int cy,UINT nFlags);
絎竴涓弬鏁版垜涓嶄細鐢紝涓鑸涓篘ULL;
x銆亂鎺т歡浣嶇疆錛沜x銆乧y鎺т歡瀹藉害鍜岄珮搴︼紱
nFlags甯哥敤鍙栧鹼細
SWP_NOZORDER錛氬拷鐣ョ涓涓弬鏁幫紱
SWP_NOMOVE錛氬拷鐣銆亂錛岀淮鎸佷綅緗笉鍙橈紱
SWP_NOSIZE錛氬拷鐣x銆乧y錛岀淮鎸佸ぇ灝忎笉鍙橈紱
渚嬶細
CWnd *pWnd;
pWnd = GetDlgItem( IDC_BUTTON1 );聽聽聽聽//鑾峰彇鎺т歡鎸囬拡錛孖DC_BUTTON1涓烘帶浠禝D鍙?br />pWnd->SetWindowPos( NULL,50,80,0,0,SWP_NOZORDER | SWP_NOSIZE );聽聽聽聽//鎶婃寜閽Щ鍒扮獥鍙g殑(50,80)澶?br />pWnd = GetDlgItem( IDC_EDIT1 );
pWnd->SetWindowPos( NULL,0,0,100,80,SWP_NOZORDER | SWP_NOMOVE );聽聽聽聽//鎶婄紪杈戞帶浠剁殑澶у皬璁句負(100,80)錛屼綅緗笉鍙?br />pWnd = GetDlgItem( IDC_EDIT1 );
pWnd->SetWindowPos( NULL,0,0,100,80,SWP_NOZORDER );聽聽聽聽//緙栬緫鎺т歡鐨勫ぇ灝忓拰浣嶇疆閮芥敼鍙?br />浠ヤ笂鏂規硶涔熼傜敤浜庡悇縐嶇獥鍙c?br />

VC瀛︿範絎旇4錛氫粈涔堟椂鍊欒瀹氳涓帶浠剁殑鍒濆灝哄錛?/b>

鎴戝湪CFormView鐨勮涓姞鍏ヤ簡涓涓紪杈戞帶浠訛紝鍦ㄨ繍琛屾椂浣垮畠鍏呮弧瀹㈡埛鍖猴紝褰撶獥鍙f敼鍙樺ぇ灝忔椂瀹冧篃璺熺潃鏀瑰彉銆?br />鏀瑰彉鎺т歡灝哄鍙互鏀懼湪OnDraw()鍑芥暟涓紝涔熷彲鏀懼湪CalcWindowRect()鍑芥暟涓紝褰撶獥鍙e昂瀵稿彂鐢熷彉鍖栨椂錛屽畠浠兘灝嗚鎵ц錛屼笖CalcWindowRect()鍑芥暟鍏堜簬OnDraw()鍑芥暟錛屼笅渚嬫槸鍦–alcWindowRect()鍑芥暟涓慨鏀規帶浠跺昂瀵搞?br />閲嶈澆VIEW綾葷殑CalcWindowRect鍑芥暟錛屾妸璁懼畾鎺т歡鐨勫昂瀵哥殑璇彞鍔犲叆榪欎釜鍑芥暟涓?br />渚嬶細
void CMyEditView::CalcWindowRect(LPRECT lpClientRect, UINT nAdjustType)
{
聽聽聽聽// TODO: Add your specialized code here and/or call the base class

聽聽聽聽CFrameWnd *pFrameWnd=GetParentFrame(); //鑾峰彇妗嗘灦紿楀彛鎸囬拡

聽聽聽聽CRect rect;
聽聽聽聽pFrameWnd->GetClientRect(&rect); //鑾峰彇瀹㈡埛鍖哄昂瀵?br />
聽聽聽聽CWnd *pEditWnd=GetDlgItem(IDC_MYEDIT); //鑾峰彇緙栬緫鎺т歡鎸囬拡錛孖DC_MYEDIT涓烘帶浠禝D鍙?br />聽聽聽聽pEditWnd->SetWindowPos(NULL,0,0,rect.right,rect.bottom-50,SWP_NOMOVE | SWP_NOZORDER); //璁懼畾鎺т歡灝哄錛宐ottom-50鏄負浜嗚鍑虹姸鎬佹潯浣嶇疆銆?br />
聽聽聽聽CFormView::CalcWindowRect(lpClientRect, nAdjustType);
}


VC瀛︿範絎旇5錛氬崟閫夋寜閽帶浠訛紙Ridio Button錛夌殑浣跨敤

涓銆佸鍗曢夋寜閽繘琛屽垎緇勶細
姣忕粍鐨勭涓涓崟閫夋寜閽緗睘鎬э細Group錛孴abstop錛孉uto;鍏朵綑鎸夐挳璁劇疆灞炴abstop錛孉uto銆?br />
濡傦細
Ridio1銆丷idio2銆丷idio3涓轟竴緇勶紝Ridio4銆丷idio5涓轟竴緇?br />
璁懼畾Ridio1灞炴э細Group錛孴abstop錛孉uto
璁懼畾Ridio2灞炴э細Tabstop錛孉uto
璁懼畾Ridio3灞炴э細Tabstop錛孉uto

璁懼畾Ridio4灞炴э細Group錛孴abstop錛孉uto
璁懼畾Ridio5灞炴э細Tabstop錛孉uto

浜屻佺敤ClassWizard涓哄崟閫夋帶浠跺畾涔夊彉閲忥紝姣忕粍鍙兘瀹氫箟涓涓傚錛歮_Ridio1銆乵_Ridio4銆?br />
涓夈佺敤ClassWizard鐢熸垚鍚勫崟閫夋寜閽殑鍗曞嚮娑堟伅鍑芥暟錛屽茍鍔犲叆鍐呭錛?br />
void CWEditView::OnRadio1()
{
聽聽聽聽m_Ridio1 = 0;聽聽聽聽//絎竴涓崟閫夋寜閽閫変腑
}

void CWEditView::OnRadio2()
{
聽聽聽聽m_Ridio1 = 1;聽聽聽聽//絎簩涓崟閫夋寜閽閫変腑
}

void CWEditView::OnRadio3()
{
聽聽聽聽m_Ridio1 = 2;聽聽聽聽//絎笁涓崟閫夋寜閽閫変腑
}

void CWEditView::OnRadio4()
{
聽聽聽聽m_Ridio4 = 0;聽聽聽聽//絎洓涓崟閫夋寜閽閫変腑
}

void CWEditView::OnRadio5()
{
聽聽聽聽m_Ridio4 = 1;聽聽聽聽//絎簲涓崟閫夋寜閽閫変腑
}

鍥涖佽緗粯璁ゆ寜閽細
鍦ㄥ畾涔夋帶浠跺彉閲忔椂錛孋lassWizard鍦ㄦ瀯閫犲嚱鏁頒腑浼氭妸鍙橀噺鍒濆艱涓?1錛屽彧闇鎶婂畠鏀逛負鍏跺畠鍊煎嵆鍙?br />濡傦細
//{{AFX_DATA_INIT(CWEditView)
m_Ridio1 = 0;聽聽聽聽//鍒濆鏃剁涓涓崟閫夋寜閽閫変腑
m_Ridio4 = 0;聽聽聽聽//鍒濆鏃剁鍥涗釜鍗曢夋寜閽閫変腑
//}}AFX_DATA_INIT


VC瀛︿範絎旇6錛氭棆杞帶浠訛紙Spin錛夌殑浣跨敤

褰撳崟鍑繪棆杞帶浠朵笂鐨勬寜閽椂錛岀浉搴旂殑緙栬緫鎺т歡鍊間細澧炲ぇ鎴栧噺灝忋傚叾璁劇疆鐨勪竴鑸楠や負錛?br />涓銆佸湪瀵硅瘽妗嗕腑鏀懼叆涓涓猄pin鎺т歡鍜屼竴涓紪杈戞帶浠朵綔涓篠pin鎺т歡鐨勪紮浼寸獥鍙o紝
璁劇疆Spin鎺т歡灞炴э細Auto buddy銆丼et buddy integer銆丄rrow keys
璁劇疆鏂囨湰鎺т歡灞炴э細Number

浜屻佺敤ClassWizard涓篠pin鎺т歡瀹氫箟鍙橀噺m_Spin錛屼負緙栬緫鎺т歡瀹氫箟鍙橀噺m_Edit錛屽畾涔夋椂娉ㄦ剰瑕佹妸m_Edit璁劇疆涓篿nt鍨嬨?br />
涓夈佸湪瀵硅瘽妗嗙殑OnInitDialog()鍑芥暟涓姞鍏ヨ鍙ワ細
BOOL CMyDlg::OnInitDialog()
{
聽聽聽聽CDialog::OnInitDialog();
聽聽聽聽
聽聽聽聽m_Spin.SetBuddy( GetDlgItem( IDC_EDIT1 ) );聽聽聽聽//璁劇疆緙栬緫鎺т歡涓篠pin鎺т歡鐨勪紮浼寸獥鍙?br />聽聽聽聽m_Spin.SetRange( 0, 10 );聽聽聽聽//璁劇疆鏁版嵁鑼冨洿涓?-10
聽聽聽聽return TRUE;
}

鍥涖佺敤ClassWizard涓虹紪杈戞帶浠舵坊鍔燛N_CHANGE娑堟伅澶勭悊鍑芥暟錛屽啀鍔犲叆璇彞錛?br />void CMyDlg::OnChangeEdit1()
{
聽聽聽聽m_Edit = m_Spin.GetPos();聽聽聽聽//鑾峰彇Spin鎺т歡褰撳墠鍊?br />}

OK!


VC瀛︿範絎旇7錛氱▼搴忕粨鏉熸椂淇濆瓨鏂囦歡闂

鍦ㄦ枃妗?瑙嗗浘緇撴瀯涓紝鐢ㄤ覆琛屽寲鑷姩淇濆瓨鏂囦歡鍦ㄥ悇縐峍C涔︿笂閮芥湁浠嬬粛銆傜幇鍦ㄧ殑闂鏄垜涓嶄嬌鐢ㄤ覆琛屽寲錛岃屾槸鑷繁鍔ㄦ墜淇濆瓨錛屽綋鐐瑰嚮紿楀彛鐨勫叧闂寜閽椂錛屽浣曟彁紺哄茍淇濆瓨鏂囨。銆?br />
鐢–lassWizard鍦ㄦ枃妗g被錛圕xxDoc錛変腑娣誨姞鍑芥暟CanCloseFrame()錛屽啀鍦ㄥ叾涓姞鍏ヤ繚瀛樻枃浠剁殑璇彞灝卞彲浠ヤ簡銆?br />娉細瑕佷繚瀛樼殑鏁版嵁搴旀斁鍦ㄦ枃妗g被錛圕xxDoc錛夋垨搴旂敤紼嬪簭綾伙紙CxxApp錛変腑錛屼笉瑕佹斁鍦ㄨ鍥劇被涓?br />
渚嬶細
//閫鍑虹▼搴?br />BOOL CEditDoc::CanCloseFrame(CFrameWnd* pFrame)
{
聽聽聽聽CFile file;
聽聽聽聽if(b_Flag)聽聽聽聽//b_Flag涓烘枃妗d慨鏀規爣蹇楋紝鍦ㄤ慨鏀規枃妗f椂灝嗗叾緗負True
聽聽聽聽{
聽聽聽聽聽聽聽聽int t;
聽聽聽聽聽聽聽聽t=::MessageBox(NULL,"鏂囧瓧宸茬粡鏀瑰彉錛岃瀛樼洏鍚楋紵","璀﹀憡",
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽MB_YESNOCANCEL | MB_ICONWARNING);聽聽聽聽//寮瑰嚭鎻愮ず瀵硅瘽妗?br />聽聽聽聽聽聽聽聽if(t==0 || t==IDCANCEL)
聽聽聽聽聽聽聽聽聽聽聽聽return false;
聽聽聽聽聽聽聽聽if(t==IDYES)
聽聽聽聽聽聽聽聽{
聽聽聽聽聽聽聽聽聽聽聽聽CString sFilter="Text File(*.txt)|*.txt||";
聽聽聽聽聽聽聽聽聽聽聽聽CFileDialog m_Dlg(FALSE,"txt",NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,(LPCTSTR)sFilter,NULL);聽聽聽聽//瀹氬埗鏂囦歡瀵硅瘽妗?br />
聽聽聽聽聽聽聽聽聽聽聽聽int k=m_Dlg.DoModal();聽聽聽聽//寮瑰嚭鏂囦歡瀵硅瘽妗?br />聽聽聽聽聽聽聽聽聽聽聽聽if(k==IDCANCEL || k==0)
聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽return false;
聽聽聽聽聽聽聽聽聽聽聽聽m_PathName=m_Dlg.GetPathName();聽聽聽聽//鑾峰彇閫夋嫨鐨勬枃浠惰礬寰勫悕
聽聽聽聽聽聽聽聽聽聽聽聽
聽聽聽聽聽聽聽聽聽聽聽聽file.Open(m_PathName,CFile::modeCreate | CFile::modeWrite);
聽聽聽聽聽聽聽聽聽聽聽聽file.Write(m_Text,m_TextLen);聽聽聽聽//鏁版嵁鍐欏叆鏂囦歡
聽聽聽聽聽聽聽聽聽聽聽聽file.Close();
聽聽聽聽聽聽聽聽}
聽聽聽聽}
聽聽聽聽return CDocument::CanCloseFrame(pFrame);
}


VC瀛︿範絎旇8錛歎pdateData()

瀵逛簬鍙互鎺ユ敹鏁版嵁鐨勬帶浠訛紝濡傜紪杈戞帶浠舵潵璇達紝UpdateData()鍑芥暟鑷沖叧閲嶈銆傚綋鎺т歡鍐呭鍙戠敓鍙樺寲鏃訛紝瀵瑰簲鐨勬帶浠跺彉閲忕殑鍊煎茍娌℃湁璺熺潃鍙樺寲錛屽悓鏍鳳紝褰撴帶浠跺彉閲忓煎彉鍖栨椂錛屾帶浠跺唴瀹逛篃涓嶄細璺熺潃鍙樸?br />UpdateData()鍑芥暟灝辨槸瑙e喅榪欎釜闂鐨勩?br />
UpdateData(true);鎶婃帶浠跺唴瀹硅鍏ユ帶浠跺彉閲?br />UpdateData(false);鐢ㄦ帶浠跺彉閲忕殑鍊兼洿鏂版帶浠?br />
濡傦細鏈夌紪杈戞帶浠禝DC_EDIT1錛屽搴旂殑鍙橀噺涓哄瓧絎︿覆m_Edit1錛?br />1銆佷慨鏀瑰彉閲忓煎茍鏄劇ず鍦ㄦ帶浠朵腑錛?br />m_Edit1 = _T("緇撴灉涓?0");
UpdateData(false);
2銆佽鍙栨帶浠剁殑鍊煎埌鍙橀噺涓細
鐢–lassWizard涓篒DC_EDIT1娣誨姞EN_CHANGE娑堟伅澶勭悊鍑芥暟錛?br />void CEditView::OnChangeEdit1()
{
聽聽聽聽UpdateData(true);
}
VC瀹炵幇BMP浣嶅浘鏂囦歡緇撴瀯鍙婂鉤婊戠緝鏀?/strong>

鐢ㄦ櫘閫氭柟娉曟樉紺築MP浣嶅浘錛屽崰鍐呭瓨澶э紝閫熷害鎱紝鍦ㄥ浘褰㈢緝灝忔椂錛屽け鐪熶弗閲?鍦ㄤ綆棰滆壊浣嶆暟鐨勮澶囦笂鏄劇ず楂橀鑹蹭綅鏁扮殑鍥懼艦鍥懼艦鏃跺け鐪熷ぇ銆傛湰鏂囬噰鐢ㄨ棰戝嚱鏁版樉紺築MP浣嶅浘錛屽彲浠ユ秷闄や互涓婄殑緙虹偣銆?

涓銆丅MP鏂囦歡緇撴瀯

1. BMP鏂囦歡緇勬垚

BMP鏂囦歡鐢辨枃浠跺ご銆佷綅鍥句俊鎭ご銆侀鑹蹭俊鎭拰鍥懼艦鏁版嵁鍥涢儴鍒嗙粍鎴愩?

2. BMP鏂囦歡澶?

BMP鏂囦歡澶存暟鎹粨鏋勫惈鏈塀MP鏂囦歡鐨勭被鍨嬨佹枃浠跺ぇ灝忓拰浣嶅浘璧峰浣嶇疆絳変俊鎭?

鍏剁粨鏋勫畾涔夊涓?

typedef struct tagBITMAPFILEHEADER

{

WORDbfType; // 浣嶅浘鏂囦歡鐨勭被鍨嬶紝蹇呴』涓築M

DWORD bfSize; // 浣嶅浘鏂囦歡鐨勫ぇ灝忥紝浠ュ瓧鑺備負鍗曚綅

WORDbfReserved1; // 浣嶅浘鏂囦歡淇濈暀瀛楋紝蹇呴』涓?

WORDbfReserved2; // 浣嶅浘鏂囦歡淇濈暀瀛楋紝蹇呴』涓?

DWORD bfOffBits; // 浣嶅浘鏁版嵁鐨勮搗濮嬩綅緗紝浠ョ浉瀵逛簬浣嶅浘

// 鏂囦歡澶寸殑鍋忕Щ閲忚〃紺猴紝浠ュ瓧鑺備負鍗曚綅

} BITMAPFILEHEADER;

3. 浣嶅浘淇℃伅澶?br />
BMP浣嶅浘淇℃伅澶存暟鎹敤浜庤鏄庝綅鍥劇殑灝哄絳変俊鎭?/p>
typedef struct tagBITMAPINFOHEADER{

DWORD biSize; // 鏈粨鏋勬墍鍗犵敤瀛楄妭鏁?br />
LONGbiWidth; // 浣嶅浘鐨勫搴︼紝浠ュ儚绱犱負鍗曚綅

LONGbiHeight; // 浣嶅浘鐨勯珮搴︼紝浠ュ儚绱犱負鍗曚綅

WORD biPlanes; // 鐩爣璁懼鐨勭駭鍒紝蹇呴』涓?

WORD biBitCount// 姣忎釜鍍忕礌鎵闇鐨勪綅鏁幫紝蹇呴』鏄?(鍙岃壊),

// 4(16鑹?錛?(256鑹?鎴?4(鐪熷僵鑹?涔嬩竴

DWORD biCompression; // 浣嶅浘鍘嬬緝綾誨瀷錛屽繀欏繪槸 0(涓嶅帇緙?,

// 1(BI_RLE8鍘嬬緝綾誨瀷)鎴?(BI_RLE4鍘嬬緝綾誨瀷)涔嬩竴

DWORD biSizeImage; // 浣嶅浘鐨勫ぇ灝忥紝浠ュ瓧鑺備負鍗曚綅

LONGbiXPelsPerMeter; // 浣嶅浘姘村鉤鍒嗚鯨鐜囷紝姣忕背鍍忕礌鏁?br />
LONGbiYPelsPerMeter; // 浣嶅浘鍨傜洿鍒嗚鯨鐜囷紝姣忕背鍍忕礌鏁?br />
DWORD biClrUsed;// 浣嶅浘瀹為檯浣跨敤鐨勯鑹茶〃涓殑棰滆壊鏁?br />
DWORD biClrImportant;// 浣嶅浘鏄劇ず榪囩▼涓噸瑕佺殑棰滆壊鏁?br />
} BITMAPINFOHEADER;

4. 棰滆壊琛?/p>

棰滆壊琛ㄧ敤浜庤鏄庝綅鍥句腑鐨勯鑹詫紝瀹冩湁鑻ュ共涓〃欏癸紝姣忎竴涓〃欏規槸涓涓猂GBQUAD綾誨瀷鐨勭粨鏋勶紝瀹氫箟涓縐嶉鑹層俁GBQUAD緇撴瀯鐨勫畾涔夊涓?

typedef struct tagRGBQUAD {

BYTErgbBlue;// 钃濊壊鐨勪寒搴?鍊艱寖鍥翠負0-255)

BYTErgbGreen; // 緇胯壊鐨勪寒搴?鍊艱寖鍥翠負0-255)

BYTErgbRed; // 綰㈣壊鐨勪寒搴?鍊艱寖鍥翠負0-255)

BYTErgbReserved;// 淇濈暀錛屽繀欏諱負0

} RGBQUAD;

棰滆壊琛ㄤ腑RGBQUAD緇撴瀯鏁版嵁鐨勪釜鏁版湁biBitCount鏉ョ‘瀹?

褰揵iBitCount=1,4,8鏃訛紝鍒嗗埆鏈?,16,256涓〃欏?

褰揵iBitCount=24鏃訛紝娌℃湁棰滆壊琛ㄩ」銆?br />
浣嶅浘淇℃伅澶村拰棰滆壊琛ㄧ粍鎴愪綅鍥句俊鎭紝BITMAPINFO緇撴瀯瀹氫箟濡備笅:

typedef struct tagBITMAPINFO {

BITMAPINFOHEADER bmiHeader; // 浣嶅浘淇℃伅澶?br />
RGBQUAD bmiColors[1]; // 棰滆壊琛?br />
} BITMAPINFO;

5. 浣嶅浘鏁版嵁

浣嶅浘鏁版嵁璁板綍浜嗕綅鍥劇殑姣忎竴涓儚绱犲鹼紝璁板綍欏哄簭鏄湪鎵弿琛屽唴鏄粠宸﹀埌鍙?鎵弿琛屼箣闂存槸浠庝笅鍒頒笂銆備綅鍥劇殑涓涓儚绱犲兼墍鍗犵殑瀛楄妭鏁?

褰揵iBitCount=1鏃訛紝8涓儚绱犲崰1涓瓧鑺?

褰揵iBitCount=4鏃訛紝2涓儚绱犲崰1涓瓧鑺?

褰揵iBitCount=8鏃訛紝1涓儚绱犲崰1涓瓧鑺?

褰揵iBitCount=24鏃?1涓儚绱犲崰3涓瓧鑺?

Windows瑙勫畾涓涓壂鎻忚鎵鍗犵殑瀛楄妭鏁板繀欏繪槸4鐨勫嶆暟(鍗充互long涓哄崟浣?,涓嶈凍鐨勪互0濉厖錛屼竴涓壂鎻忚鎵鍗犵殑瀛楄妭鏁拌綆楁柟娉?

DataSizePerLine= (biWidth* biBitCount+31)/8;

// 涓涓壂鎻忚鎵鍗犵殑瀛楄妭鏁?br />
DataSizePerLine= DataSizePerLine/4*4; // 瀛楄妭鏁板繀欏繪槸4鐨勫嶆暟

浣嶅浘鏁版嵁鐨勫ぇ灝?涓嶅帇緙╂儏鍐典笅):

DataSize= DataSizePerLine* biHeight;

浜屻丅MP浣嶅浘涓鑸樉紺烘柟娉?/strong>

1. 鐢寵鍐呭瓨絀洪棿鐢ㄤ簬瀛樻斁浣嶅浘鏂囦歡 GlobalAlloc(GHND錛孎ileLength);

2. 浣嶅浘鏂囦歡璇誨叆鎵鐢寵鍐呭瓨絀洪棿涓?LoadFileToMemory( mpBitsSrc錛宮FileName);

3. 鍦∣nPaint絳夊嚱鏁頒腑鐢ㄥ垱寤烘樉紺虹敤浣嶅浘

鐢–reateDIBitmap()鍒涘緩鏄劇ず鐢ㄤ綅鍥撅紝鐢–reateCompatibleDC()鍒涘緩鍏煎DC, 鐢⊿electBitmap()閫夋嫨鏄劇ず浣嶅浘銆?

4. 鐢˙itBlt鎴朣tretchBlt絳夊嚱鏁版樉紺轟綅鍥?

5. 鐢―eleteObject()鍒犻櫎鎵鍒涘緩鐨勪綅鍥?

浠ヤ笂鏂規硶鐨勭己鐐規槸: 1)鏄劇ず閫熷害鎱? 2) 鍐呭瓨鍗犵敤澶? 3) 浣嶅浘鍦ㄧ緝灝忔樉紺烘椂鍥懼艦澶辯湡澶?(鍙氳繃瀹夎瀛椾綋騫蟲粦杞歡鏉ヨВ鍐?; 4) 鍦ㄤ綆棰滆壊浣嶆暟鐨勮澶囦笂(濡?56鏄劇ず妯″紡)鏄劇ず楂橀鑹蹭綅鏁扮殑鍥懼艦(濡傜湡褰╄壊)鍥懼艦澶辯湡涓ラ噸銆?

涓夈丅MP浣嶅浘緙╂斁鏄劇ず

鐢―rawDib瑙嗛鍑芥暟鏉ユ樉紺轟綅鍥撅紝鍐呭瓨鍗犵敤灝戯紝閫熷害蹇紝鑰屼笖榪樺彲浠ュ鍥懼艦榪涜娣″寲(Dithering)澶勭悊銆傛貳鍖栧鐞嗘槸涓縐嶅浘褰㈢畻娉曪紝鍙互鐢ㄦ潵鍦ㄤ竴涓敮鎸佹瘮鍥懼儚鎵鐢ㄩ鑹茶灝戠殑璁懼涓婃樉紺哄僵鑹插浘鍍忋侭MP浣嶅浘鏄劇ず鏂規硶濡備笅:

1. 鎵撳紑瑙嗛鍑芥暟DrawDibOpen()錛屼竴鑸斁鍦ㄥ湪鏋勯犲嚱鏁頒腑

2. 鐢寵鍐呭瓨絀洪棿鐢ㄤ簬瀛樻斁浣嶅浘鏂囦歡

GlobalAlloc(GHND錛孎ileLength);

3. 浣嶅浘鏂囦歡璇誨叆鎵鐢寵鍐呭瓨絀洪棿涓?/p>
LoadFileToMemory( mpBitsSrc錛宮FileName);

4. 鍦∣nPaint絳夊嚱鏁頒腑鐢―rawDibRealize()錛孌rawDibDraw()鏄劇ず浣嶅浘

5. 鍏抽棴瑙嗛鍑芥暟DrawDibClose(),涓鑸斁鍦ㄥ湪鏋愭瀯鍑芥暟涓?/p>

浠ヤ笂鏂規硶鐨勪紭鐐規槸: 1)鏄劇ず閫熷害蹇? 2) 鍐呭瓨鍗犵敤灝? 3) 緙╂斁鏄劇ず鏃跺浘褰㈠け鐪熷皬,4) 鍦ㄤ綆棰滆壊浣嶆暟鐨勮澶囦笂鏄劇ず楂橀鑹蹭綅鏁扮殑鍥懼艦鍥懼艦鏃跺け鐪熷皬; 5) 閫氳繃鐩存帴澶勭悊浣嶅浘鏁版嵁錛屽彲浠ュ埗浣滅畝鍗曞姩鐢匯?
鍥涖丆ViewBimap綾葷紪紼嬭鐐?/strong>

1. 鍦–ViewBimap綾諱腑娣誨姞瑙嗛鍑芥暟絳夋垚鍛?

HDRAWDIB m_hDrawDib; // 瑙嗛鍑芥暟

HANDLEmhBitsSrc; // 浣嶅浘鏂囦歡鍙ユ焺(鍐呭瓨)

LPSTR mpBitsSrc; // 浣嶅浘鏂囦歡鍦板潃(鍐呭瓨)

BITMAPINFOHEADER *mpBitmapInfo; // 浣嶅浘淇℃伅澶?/td>

2. 鍦–ViewBimap綾繪瀯閫犲嚱鏁頒腑娣誨姞鎵撳紑瑙嗛鍑芥暟

m_hDrawDib= DrawDibOpen();

3. 鍦–ViewBimap綾繪瀽鏋勫嚱鏁頒腑娣誨姞鍏抽棴瑙嗛鍑芥暟

if( m_hDrawDib != NULL)

{

DrawDibClose( m_hDrawDib);

m_hDrawDib = NULL;

}

4. 鍦–ViewBimap綾誨浘褰㈡樉紺哄嚱鏁癘nPaint涓坊鍔燝raphicDraw()

voidCViewBitmap::OnPaint()

{

CPaintDC dc(this); // device context for painting

GraphicDraw( );

}

voidCViewBitmap::GraphicDraw( void )

{

CClientDC dc(this); // device context for painting

BITMAPFILEHEADER *pBitmapFileHeader;

ULONG bfoffBits= 0;

CPoint Wid;

// 鍥懼艦鏂囦歡鍚嶆湁鏁?(=0 BMP)

if( mBitmapFileType < ID_BITMAP_BMP ) return;

// 鍥懼艦鏂囦歡鍚嶆湁鏁?(=0 BMP)

// 鍑嗗鏄劇ず鐪熷僵浣嶅浘

pBitmapFileHeader= (BITMAPFILEHEADER *) mpBitsSrc;

bfoffBits= pBitmapFileHeader->bfOffBits;

// 浣跨敤鏅氬嚱鏁版樉紺轟綅鍥?br />
if( m_hDrawDib == NULL || mDispMethod == 0)

{

HBITMAP hBitmap=::CreateDIBitmap(dc.m_hDC,

mpBitmapInfo, CBM_INIT, mpBitsSrc+bfoffBits,

(LPBITMAPINFO) mpBitmapInfo,DIB_RGB_COLORS);

// 寤虹珛浣嶅浘

HDC hMemDC=::CreateCompatibleDC(dc.m_hDC);// 寤虹珛鍐呭瓨

HBITMAP hBitmapOld= SelectBitmap(hMemDC, hBitmap); // 閫夋嫨瀵硅薄

// 鎴愬憳CRect mDispR鐢ㄤ簬鎸囩ず鍥懼艦鏄劇ず鍖哄煙鐨勫ぇ灝?

// 鎴愬憳CPoint mPos鐢ㄤ簬鎸囩ず鍥懼艦鏄劇ず璧峰浣嶇疆鍧愭爣.

if( mPos.x > (mpBitmapInfo- >biWidth - mDispR.Width() ))

mPos.x= mpBitmapInfo->biWidth - mDispR.Width() ;

if( mPos.y > (mpBitmapInfo- >biHeight- mDispR.Height()))

mPos.y= mpBitmapInfo- >biHeight- mDispR.Height();

if( mPos.x < 0 ) mPos.x= 0;

if( mPos.y < 0 ) mPos.y= 0;

if( mFullViewTog == 0)

{

// 鏄劇ず鐪熷僵浣嶅浘

::BitBlt(dc.m_hDC,0,0, mDispR.Width(), mDispR.Height(),

hMemDC,mPos.x,mPos.y, SRCCOPY);

} else {

::StretchBlt(dc.m_hDC,0,0, mDispR.Width(), mDispR.Height(),

hMemDC,0,0, mpBitmapInfo- >biWidth, mpBitmapInfo-

>biHeight, SRCCOPY);

}

// 緇撴潫鏄劇ず鐪熷僵浣嶅浘

::DeleteObject(SelectObject(hMemDC,hBitmapOld));

// 鍒?闄?浣?鍥?br />
} else {

// 浣跨敤瑙嗛鍑芥暟鏄劇ず浣嶅浘

if( mPos.x > (mpBitmapInfo- >biWidth - mDispR.Width() ))

mPos.x= mpBitmapInfo- >biWidth - mDispR.Width() ;

if( mPos.y > (mpBitmapInfo- >biHeight- mDispR.Height()))

mPos.y= mpBitmapInfo- >biHeight- mDispR.Height();

if( mPos.x < 0 ) mPos.x= 0;

if( mPos.y < 0 ) mPos.y= 0;

// 鏄劇ず鐪熷僵浣嶅浘

DrawDibRealize( m_hDrawDib, dc.GetSafeHdc(), TRUE);

if( mFullViewTog == 0)

{

Wid.x= mDispR.Width();

Wid.y= mDispR.Height();

// 1:1 鏄劇ず鏃? 涓嶈兘澶т簬鍥懼艦澶у皬

if( Wid.x > mpBitmapInfo- >biWidth )

Wid.x = mpBitmapInfo- >biWidth;

if( Wid.y > mpBitmapInfo- >biHeight)

Wid.y = mpBitmapInfo- >biHeight;

DrawDibDraw( m_hDrawDib, dc.GetSafeHdc()

, 0, 0, Wid.x, Wid.y,

mpBitmapInfo, (LPVOID) (mpBitsSrc+bfoffBits),

mPos.x, mPos.y, Wid.x, Wid.y, DDF_BACKGROUNDPAL);

} else {

DrawDibDraw( m_hDrawDib, dc.GetSafeHdc(),

0, 0, mDispR.Width(), mDispR.Height(),

mpBitmapInfo, (LPVOID) (mpBitsSrc+bfoffBits),

0, 0, mpBitmapInfo- >biWidth, mpBitmapInfo- >biHeight,

DDF_BACKGROUNDPAL);

}

}

return;

}

浜斻佷嬌鐢–ViewBimap綾繪樉紺築MP浣嶅浘

1. 鍦╒isual C++5.0涓柊寤轟竴涓悕縐頒負mymap宸ョ▼鏂囦歡錛岀被鍨嬩負MFC AppWizard[exe]銆傚湪緙栬瘧榪愯閫氳繃鍚庯紝鍦╓orkSpace(濡傝鍏抽棴,鐢ˋlt_0鎵撳紑)鐐瑰嚮ResourceView錛岀偣鍑籑enu宸︿晶鐨?絎﹀彿灞曞紑Menu鏉$洰,鍙屽嚮IDR_MAINFRAME鏉$洰,榪涘叆鑿滃崟璧勬簮緙栬緫錛屽湪'鈥滄煡鐪?V)鈥濅笅鎷夊紡鑿滃崟(鑻辨枃鐗堜負View涓嬫媺寮忚彍鍗?鐨勫熬閮ㄦ坊鍔犫淰iewBitmap鈥濇潯鐩紝鍏禝D涓篒D_VIEW_BITMAP銆?

2. 鍦╒isual C++5.0涓偣鍑諱笅鎷夊紡鑿滃崟Project- >Add To project- >Files...錛屽皢Bitmap0.h鍜孊itmap0.cpp娣誨姞鍒板伐紼嬫枃浠朵腑銆?

3. 鍦╒isual C++5.0涓寜Ctrl_W榪涘叆MFC ClassWizard錛岄夋嫨綾誨悕縐頒負CMainFrame,ObjectIDs: ID_VIEW_BITMAP錛孧essages閫夋嫨Command錛岀劧鍚庣偣鍑籄dd Fucction鎸夐挳,鐒跺悗杈撳叆鍑芥暟鍚嶄負OnViewBimap銆傚湪娣誨姞OnViewBimap鍚庯紝鍦∕ember functions: 涓偣鍑籓nViewBimap鏉$洰,鐐瑰嚮Edit Code鎸夐挳緙栬緫紼嬪簭浠g爜銆備唬鐮佸涓?

void CMainFrame::OnViewBitmap()

{

// TODO: Add your command handler code here

CViewBitmap *pViewBitmap= NULL;

pViewBitmap= new CViewBitmap( "BITMAP.BMP", this);

pViewBitmap- >ShowWindow( TRUE);

}

騫跺湪璇ョ▼搴忕殑澶撮儴娣誨姞#include "bitmap0.h"錛岀劧鍚庣紪璇戣繍琛屻?

4. 鎵句竴涓ぇ涓鐐圭殑鐪熷僵鑹茬殑BMP浣嶅浘錛屽皢瀹冩嫹璐濆埌BITMAP.BMP涓?br />
5. 榪愯鏃訛紝鐐瑰嚮涓嬫媺寮忚彍鍗曗滄煡鐪?V)- >ViewBitmap鈥?鑻辨枃鐗堜負View- > ViewBitmap錛夊嵆鍙樉紺築ITMAP.BMP浣嶅浘銆?br />
鍏丆ViewBimap綾誨姛鑳借鏄?/strong>

1. 鍦ㄥ鎴峰尯涓甫鏈夋按騫沖拰鍨傜洿婊氬姩鏉°傚湪浣嶅浘澶у皬澶т簬鏄劇ず瀹㈡埛鍖烘椂錛屽彲浠ヤ嬌鐢ㄦ粴鍔ㄦ潯;鍦ㄤ綅鍥懼ぇ灝忓皬浜庢樉紺哄鎴峰尯鎴栧叏灞忔樉紺烘椂錛屾粴鍔ㄦ潯鏃犳晥銆?br />
2. 鍦ㄥ鎴峰尯涓簳閮ㄥ甫鏈夌姸鎬佹潯銆傜姸鎬佹潯涓殑絎竴鏍間負浣嶅浘淇℃伅錛岀浜屾牸涓轟綅鍥炬樉紺烘柟娉?鍙互鏄嬌鐢ㄦ櫘閫氬嚱鏁版垨浣跨敤瑙嗛鍑芥暟銆傚湪絎簩鏍煎尯鍩熷唴鐐瑰嚮榧犳爣錛屽彲鍦ㄤ袱鑰呬箣闂存帴鎹€傜涓夋牸涓轟綅鍥炬樉紺烘瘮渚嬶紝鍙互鏄?;1鏄劇ず鎴栧叏灞忔樉紺恒傚湪絎笁鏍煎尯鍩熷唴鐐瑰嚮榧犳爣,鍙湪涓よ呬箣闂存帴鎹€傚湪鍏ㄥ睆鏄劇ず鏃訛紝濡傛灉浣嶅浘姣斿鎴峰尯灝忥紝鍒欏浣嶅浘鏀懼ぇ; 濡傛灉浣嶅浘姣斿鎴峰尯澶э紝鍒欏浣嶅浘緙╁皬銆?br />
3. 鏀寔鏂囦歡鎷栨斁鍔熻兘銆傚彲浠ヤ粠璧勬簮綆$悊鍣ㄤ腑鎷栧姩涓涓綅鍥炬枃浠跺埌瀹㈡埛鍖猴紝灝卞彲浠ユ樉紺鴻浣嶅浘銆?

紼嬪簭璋冭瘯閫氳繃鍚庯紝鍙互鎵句竴涓緝澶х殑鐪熷僵鑹蹭綅鍥炬垨璋冩暣瀹㈡埛鍖烘瘮浣嶅浘灝忥紝鍦ㄥ叏灞忔樉紺烘柟寮忎笅錛屾瘮杈冧嬌鐢ㄦ櫘閫氬嚱鏁頒笌浣跨敤瑙嗛鍑芥暟鐨勫樊鍒傚彲浠ョ湅鍑猴紝浣嶅浘鏀懼ぇ鏃朵袱鑰呭樊鍒笉澶э紝浣嗗湪浣嶅浘緙╁皬鏃訛紝涓よ呭樊鍒槑鏄? 浣跨敤瑙嗛鍑芥暟鏃朵綅鍥懼け鐪熷皬錛屾樉紺洪熷害蹇?

榪樺彲浠ヤ粠鎺у埗闈㈡澘涓皢灞忓箷鏄劇ず鏂瑰紡浠庣湡褰╄壊鏄劇ず妯″紡鍒囨崲鍒?56鑹叉樉紺烘ā寮?鍐嶆瘮杈冧嬌鐢ㄦ櫘閫氬嚱鏁頒笌浣跨敤瑙嗛鍑芥暟鏄劇ず鍚屼竴涓湡褰╄壊浣嶅浘鐨勫樊鍒傜幇鍦ㄥ彲浠ヤ綋浼氬埌浣跨敤瑙嗛鍑芥暟鐨勪紭瓚婃т簡鍚с?

鍦ㄥ叏灞忔樉紺烘椂錛屼綅鍥劇殑xy鏂瑰悜姣斾緥涓嶇浉鍚岋紝濡傝淇濇寔鐩稿悓姣斾緥錛屽彲鍦ㄦ樉紺虹▼搴忎腑鍔犱互閫傚綋璋冩暣鍗沖彲錛岃鑰呭彲鑷瀹屾垚.

v

]]>
MFC涓庤璁℃ā寮?/title><link>http://www.shnenglu.com/mzty/archive/2006/05/25/7640.html</link><dc:creator>姊﹀湪澶╂動</dc:creator><author>姊﹀湪澶╂動</author><pubDate>Thu, 25 May 2006 05:39:00 GMT</pubDate><guid>http://www.shnenglu.com/mzty/archive/2006/05/25/7640.html</guid><wfw:comment>http://www.shnenglu.com/mzty/comments/7640.html</wfw:comment><comments>http://www.shnenglu.com/mzty/archive/2006/05/25/7640.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/mzty/comments/commentRss/7640.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mzty/services/trackbacks/7640.html</trackback:ping><description><![CDATA[ <p>This main topic of this article is to show how patterns are used in MFC. We will be seeing the usage of three patterns in MFC library.</p> <h3>Creational : Singleton Pattern</h3> <p>First step in any MFC application is the creation of application object (object of class derived from <code>CWinApp</code>). There should be only one application object in an instance of MFC application. <code>CWinApp</code> is designed to make sure that only application object is present in a given instance. <code>CWinApp</code> and its descendants are called Singleton Classes. <i>A class (<code>CWinApp</code> or its descendant) that assures a maximum of ONE object of its type at a given time and provides a global access point (<code>AfxGetApp()</code> method) to this object is a Singleton class.</i></p> <p>As this principle is applied over and over again to solve recurring object "creational" problems, this becomes a pattern. Singleton Pattern ensures that a class only has one instance and provides a global access point it. The article <a >Creating Singleton Objects using Visual C++</a> talks about different approaches for implementing Singletons.</p> <h3>Structural : Bridge Pattern</h3> <p>Bridge Pattern is all about decoupling an abstraction (interface) from its implementation so that the two can vary independently. In MFC, the process of storing/retrieving an object to/from a persistence mechanism (like a file) is called Serialization. MFC uses the Bridge Pattern to implement Serialization. <code>CArchive</code> and <code>CFile</code> classes implement object Serialization. CArchive class provides the interface for writing/reading an object to/from a persistence mechanism whereas the <code>CFile</code> and its sub classes provides implementation for different persistence mechanisms such as memory, disk file, sockets etc.</p> <p>A <code>CArchive</code> object is configured with an object of class <code>CFile</code> (or a derived class) during its construction, from which it obtains the necessary information for serialization, including the filename and type of the requested operation (a read or write). Client performing the Serialization operation can use CArchive object without regarding the persistence mechanism implemented by <code>CFile</code> classes.</p> <p>The article <a >Bridge Pattern - Bridging the gap between Interface and Implementation</a> talks about Bridge pattern in detail.</p> <h3>Behavioral : Observer Pattern</h3> <p>The Observer Pattern is intended to <i>"Define a one-to-many dependency between objects so that when one object changes state, all its dependents are notified and updated automatically"</i>. An object that is subjected to change is called a <b>Subject</b> and an object that depends on the Subject's state is called an <b>Observer</b>.</p> <p>MFC uses a Document/View variant of the Observer Pattern. MFC's famous Document/View architecture uses this variant. A document contains the data object and acts as a Subject. A view is a window object through which the user updates the document and it acts as an Observer. A document can have multiple views. Whenever the data in the document is changed by one of the views, it updates the document by calling <code>UpdateAllViews</code> method, with optional hint about the modification. To inform about the change to other views, the document object calls <code>OnUpdate</code> method for each view attached to it (except the view that called <code>UpdateAllViews</code>). Derived view classes can override the OnUpdate method and update themselves by querying the data from the document.</p> <p>The article <a >Applying Observer Pattern in C++ Applications</a> talks about Observer pattern in detail.</p> <h2>Summary</h2> <p>Design Pattern provides a common language for designers and helps them to decompose systems into a set of cooperating classes and objects. They provide proven design solution to recurring problems. In this article, I have introduced the design pattern and how MFC is using some of the patterns in its design. We can easily find more and more patterns when we dig into MFC and its classes.</p> <!-- Article Ends --> <img src ="http://www.shnenglu.com/mzty/aggbug/7640.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mzty/" target="_blank">姊﹀湪澶╂動</a> 2006-05-25 13:39 <a href="http://www.shnenglu.com/mzty/archive/2006/05/25/7640.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>CBitmap 鍜孋DiBhttp://www.shnenglu.com/mzty/archive/2006/02/20/3348.html姊﹀湪澶╂動姊﹀湪澶╂動Mon, 20 Feb 2006 05:41:00 GMThttp://www.shnenglu.com/mzty/archive/2006/02/20/3348.htmlhttp://www.shnenglu.com/mzty/comments/3348.htmlhttp://www.shnenglu.com/mzty/archive/2006/02/20/3348.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/3348.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/3348.html闃呰鍏ㄦ枃

]]>
GDI Bitmaps and Device-Independent Bitmaps 鎿嶄綔http://www.shnenglu.com/mzty/archive/2006/02/20/3347.html姊﹀湪澶╂動姊﹀湪澶╂動Mon, 20 Feb 2006 05:15:00 GMThttp://www.shnenglu.com/mzty/archive/2006/02/20/3347.htmlhttp://www.shnenglu.com/mzty/comments/3347.htmlhttp://www.shnenglu.com/mzty/archive/2006/02/20/3347.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/3347.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/3347.html闃呰鍏ㄦ枃

]]>
MESSAGE MAP鐩稿叧鍗硂ndrow錛堬級娑堟伅璋冪敤欏哄簭http://www.shnenglu.com/mzty/archive/2006/02/20/3346.html姊﹀湪澶╂動姊﹀湪澶╂動Mon, 20 Feb 2006 04:50:00 GMThttp://www.shnenglu.com/mzty/archive/2006/02/20/3346.htmlhttp://www.shnenglu.com/mzty/comments/3346.htmlhttp://www.shnenglu.com/mzty/archive/2006/02/20/3346.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/3346.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/3346.html闃呰鍏ㄦ枃

]]>
CBitmapButton鐨勪嬌鐢?/title><link>http://www.shnenglu.com/mzty/archive/2006/02/17/3307.html</link><dc:creator>姊﹀湪澶╂動</dc:creator><author>姊﹀湪澶╂動</author><pubDate>Fri, 17 Feb 2006 06:04:00 GMT</pubDate><guid>http://www.shnenglu.com/mzty/archive/2006/02/17/3307.html</guid><wfw:comment>http://www.shnenglu.com/mzty/comments/3307.html</wfw:comment><comments>http://www.shnenglu.com/mzty/archive/2006/02/17/3307.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/mzty/comments/commentRss/3307.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mzty/services/trackbacks/3307.html</trackback:ping><description><![CDATA[<FONT size=2>CBitmapButton鐨勪嬌鐢?BR>       CBitmapButton浣滀負MFC鐨勬帶浠剁被錛屽茍涓嶄負寰堝浜烘墍浣跨敤錛屽洜涓虹幇鍦ㄧ綉涓婇亶甯冪潃浠嶤Button媧劇敓鐨勫悇縐嶅悇鏍風殑鎸夐挳綾伙紝鍏朵腑鏈涓鴻憲鍚嶇殑灝辨槸CButtonST綾諱簡銆備絾鏄渶榪戝湪CSDN涓婄湅鍒板嚑涓棶棰橀兘鏄嬌鐢–BitmapButton綾伙紝浣嗘槸鐢變簬浣跨敤閿欒銆佷笉褰撹岄犳垚紼嬪簭宕╂簝鎴栬呴敊璇殑銆傛墍浠ユ葷粨涓涓婥BitmapButton綾葷殑浣跨敤錛屽笇鏈涜兘甯姪涓浜涘垵瀛﹁呫?BR>       鍙互鍙傝僊SDN鑷甫鐨勪緥瀛愨淐TRLTEST鈥濆涔燙BitmapButton鐨勭敤娉曘備釜浜烘葷粨濡備笅錛?nbsp; <BR>1銆佸湪璧勬簮緙栬緫鐨勬椂鍊欓変腑鎸夐挳鐨凮wner  draw鍗沖彲錛屼笉闇瑕侀夋嫨Bitmap灞炴э紒  <BR>2銆佸湪紼嬪簭涓畾涔変竴涓狢BitmapButton鎴愬憳鍙橀噺銆備笉鑳戒嬌鐢–lassWizard涓烘寜閽槧灝勪竴涓狢Button鍙橀噺錛岀劧鍚庢敼涓篊BitmapButton錛岃繖涔堝仛騫朵笉鑳藉皢鎸夐挳鐩存帴鏄犲皠涓篊BitmapButton綾葷殑瀵硅薄錛屽弽鑰屼細鍑虹幇鍒濆鍖栭敊璇?nbsp; <BR>3-1銆佷嬌鐢–BitmapButton::LoadBitmaps瑁呰澆鍚勭鐘舵佺殑鍥劇墖,浣跨敤SubclassDlgItem鍏寵仈鍒版兂瑕佺殑鎸夐挳錛屼嬌鐢–BitmapButton::SizeToContent鍑芥暟浣挎寜閽傚悎鍥劇墖澶у皬銆傘傛敞鎰廘oadbitmaps涓瀹氳鍦ㄥ叧鑱斿埌鎸夐挳涔嬪墠榪涜錛?nbsp; <BR>3-2銆佹垨鑰呮槸浣跨敤CBitmapButton::AutoLoad鍑芥暟鍏寵仈鍒版兂瑕佺殑鎸夐挳銆傞渶瑕佹敞鎰忥細<BR>A銆佷箣鍓嶄笉鑳戒嬌鐢–BitmapButton::LoadBitmaps瑁呰澆鍚勭鐘舵佺殑鍥劇墖錛屽惁鍒欎細鍑洪敊銆?BR>B銆丄utoLoad鍑芥暟瀹屾垚鐨勫叧鑱斿拰鏀瑰彉鎸夐挳澶у皬鐨凜BitmapButton::SizeToContent鍑芥暟鐨勫姛鑳姐?BR>C銆丆BitmapButton::AutoLoad浣跨敤鐨勪綅鍥炬槸榛樿璧勬簮ID鐨勶紝鍗沖畠浼氳嚜鍔ㄨ杞界浉鍏寵祫婧愪綅鍥俱備綅鍥劇殑璧勬簮ID鏍煎紡涓猴細"鎸夐挳Caption+U"銆?鎸夐挳Caption+D"銆?鎸夐挳Caption+F"銆?鎸夐挳Caption+X"錛屽垎鍒唬琛║p銆丏own銆丗ocus銆丏isable鐘舵併傚璧勬簮緙栬緫鏃訛紝甯屾湜鍏寵仈鐨勬寜閽殑Caption涓篢est錛岄偅涔堝叾榛樿瑁呰澆鐨勪綅鍥捐祫婧愮殑ID涓猴細"TestU"/"TestD"/"TestF"/"TestX"錛屾敞鎰忓垎鍙?"涔熸槸鍏禝D鐨勪竴閮ㄥ垎銆?/FONT><img src ="http://www.shnenglu.com/mzty/aggbug/3307.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mzty/" target="_blank">姊﹀湪澶╂動</a> 2006-02-17 14:04 <a href="http://www.shnenglu.com/mzty/archive/2006/02/17/3307.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>CString璇︾粏璁茶Вhttp://www.shnenglu.com/mzty/archive/2006/02/07/3105.html姊﹀湪澶╂動姊﹀湪澶╂動Tue, 07 Feb 2006 10:47:00 GMThttp://www.shnenglu.com/mzty/archive/2006/02/07/3105.htmlhttp://www.shnenglu.com/mzty/comments/3105.htmlhttp://www.shnenglu.com/mzty/archive/2006/02/07/3105.html#Feedback5http://www.shnenglu.com/mzty/comments/commentRss/3105.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/3105.html闃呰鍏ㄦ枃

]]>
Porting Visual C++ Code to Visual Studio 2005http://www.shnenglu.com/mzty/archive/2006/01/25/3024.html姊﹀湪澶╂動姊﹀湪澶╂動Wed, 25 Jan 2006 08:58:00 GMThttp://www.shnenglu.com/mzty/archive/2006/01/25/3024.htmlhttp://www.shnenglu.com/mzty/comments/3024.htmlhttp://www.shnenglu.com/mzty/archive/2006/01/25/3024.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/3024.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/3024.html闃呰鍏ㄦ枃

]]>
Windows API 鎶宸ч泦http://www.shnenglu.com/mzty/archive/2006/01/25/3023.html姊﹀湪澶╂動姊﹀湪澶╂動Wed, 25 Jan 2006 08:19:00 GMThttp://www.shnenglu.com/mzty/archive/2006/01/25/3023.htmlhttp://www.shnenglu.com/mzty/comments/3023.htmlhttp://www.shnenglu.com/mzty/archive/2006/01/25/3023.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/3023.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/3023.html闃呰鍏ㄦ枃

]]>
綆鍗曞ソ鐢ㄧ殑璇誨啓ini鏂囦歡鐨勭被http://www.shnenglu.com/mzty/archive/2006/01/17/2829.html姊﹀湪澶╂動姊﹀湪澶╂動Tue, 17 Jan 2006 06:09:00 GMThttp://www.shnenglu.com/mzty/archive/2006/01/17/2829.htmlhttp://www.shnenglu.com/mzty/comments/2829.htmlhttp://www.shnenglu.com/mzty/archive/2006/01/17/2829.html#Feedback7http://www.shnenglu.com/mzty/comments/commentRss/2829.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/2829.html闃呰鍏ㄦ枃

]]>
鍏蟲満瀵硅瘽妗?/title><link>http://www.shnenglu.com/mzty/archive/2006/01/14/2725.html</link><dc:creator>姊﹀湪澶╂動</dc:creator><author>姊﹀湪澶╂動</author><pubDate>Sat, 14 Jan 2006 02:03:00 GMT</pubDate><guid>http://www.shnenglu.com/mzty/archive/2006/01/14/2725.html</guid><wfw:comment>http://www.shnenglu.com/mzty/comments/2725.html</wfw:comment><comments>http://www.shnenglu.com/mzty/archive/2006/01/14/2725.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/mzty/comments/commentRss/2725.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mzty/services/trackbacks/2725.html</trackback:ping><description><![CDATA[  鏈変竴涓湭鍏紑鐨凙PI鏉ュ疄鐜拌繖涓姛鑳斤紝鏄湪Shell32.dll涓紝浣嗘病鏈夊悕瀛楋紝绱㈠紩鍙蜂負60銆備笅闈㈡槸璋冪敤鏂規硶錛?nbsp;<BR>   <DIV style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align=top><SPAN style="COLOR: #000000">  typedef </SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000"> (CALLBACK </SPAN><SPAN style="COLOR: #000000">*</SPAN><SPAN style="COLOR: #000000">SHUTDOWNDLG) (</SPAN><SPAN style="COLOR: #0000ff">int</SPAN><SPAN style="COLOR: #000000">); <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align=top>     <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align=top>    </SPAN><SPAN style="COLOR: #0000ff">void</SPAN><SPAN style="COLOR: #000000"> CDlgDlg::OnOK() <BR><IMG id=Codehighlighter1_82_367_Open_Image onclick="this.style.display='none'; Codehighlighter1_82_367_Open_Text.style.display='none'; Codehighlighter1_82_367_Closed_Image.style.display='inline'; Codehighlighter1_82_367_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockStart.gif" align=top><IMG id=Codehighlighter1_82_367_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_82_367_Closed_Text.style.display='none'; Codehighlighter1_82_367_Open_Image.style.display='inline'; Codehighlighter1_82_367_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedBlock.gif" align=top>    </SPAN><SPAN id=Codehighlighter1_82_367_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.shnenglu.com/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_82_367_Open_Text><SPAN style="COLOR: #000000">{ <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     CString s; <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     HINSTANCE hInst </SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000"> LoadLibrary(</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">shell32</SPAN><SPAN style="COLOR: #000000">"</SPAN><SPAN style="COLOR: #000000">); <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     SHUTDOWNDLG SHShutDownDialog; <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     </SPAN><SPAN style="COLOR: #0000ff">if</SPAN><SPAN style="COLOR: #000000">(hInst </SPAN><SPAN style="COLOR: #000000">!=</SPAN><SPAN style="COLOR: #000000"> </SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">) <BR><IMG id=Codehighlighter1_224_360_Open_Image onclick="this.style.display='none'; Codehighlighter1_224_360_Open_Text.style.display='none'; Codehighlighter1_224_360_Closed_Image.style.display='inline'; Codehighlighter1_224_360_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><IMG id=Codehighlighter1_224_360_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_224_360_Closed_Text.style.display='none'; Codehighlighter1_224_360_Open_Image.style.display='inline'; Codehighlighter1_224_360_Open_Text.style.display='inline';" src="http://www.shnenglu.com/images/OutliningIndicators/ContractedSubBlock.gif" align=top>     </SPAN><SPAN id=Codehighlighter1_224_360_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG src="http://www.shnenglu.com/images/dot.gif"></SPAN><SPAN id=Codehighlighter1_224_360_Open_Text><SPAN style="COLOR: #000000">{ <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     SHShutDownDialog </SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN style="COLOR: #000000"> (SHUTDOWNDLG)GetProcAddress(hInst, (LPSTR)</SPAN><SPAN style="COLOR: #000000">60</SPAN><SPAN style="COLOR: #000000">); <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     (</SPAN><SPAN style="COLOR: #000000">*</SPAN><SPAN style="COLOR: #000000">SHShutDownDialog)(</SPAN><SPAN style="COLOR: #000000">0</SPAN><SPAN style="COLOR: #000000">); <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/InBlock.gif" align=top>     FreeLibrary(hInst); <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>     }</SPAN></SPAN><SPAN style="COLOR: #000000"> <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>    }</SPAN></SPAN><SPAN style="COLOR: #000000"> <BR><IMG src="http://www.shnenglu.com/images/OutliningIndicators/None.gif" align=top></SPAN></DIV><img src ="http://www.shnenglu.com/mzty/aggbug/2725.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mzty/" target="_blank">姊﹀湪澶╂動</a> 2006-01-14 10:03 <a href="http://www.shnenglu.com/mzty/archive/2006/01/14/2725.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>c++ file and directory 鍒犻櫎錛岀Щ鍔紝鐩綍嫻忚瀵硅瘽妗嗭紝鎵炬煇鐩綍涓嬬殑鎵鏈夋枃浠訛紙鍖呮嫭瀛愮洰褰曪級http://www.shnenglu.com/mzty/archive/2006/01/12/2683.html姊﹀湪澶╂動姊﹀湪澶╂動Thu, 12 Jan 2006 06:52:00 GMThttp://www.shnenglu.com/mzty/archive/2006/01/12/2683.htmlhttp://www.shnenglu.com/mzty/comments/2683.htmlhttp://www.shnenglu.com/mzty/archive/2006/01/12/2683.html#Feedback4http://www.shnenglu.com/mzty/comments/commentRss/2683.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/2683.html闃呰鍏ㄦ枃

]]>
vc鎶宸?http://www.shnenglu.com/mzty/archive/2006/01/12/2674.html姊﹀湪澶╂動姊﹀湪澶╂動Thu, 12 Jan 2006 05:56:00 GMThttp://www.shnenglu.com/mzty/archive/2006/01/12/2674.htmlhttp://www.shnenglu.com/mzty/comments/2674.htmlhttp://www.shnenglu.com/mzty/archive/2006/01/12/2674.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/2674.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/2674.html闃呰鍏ㄦ枃

]]>
vc涓父鐢ㄧ殑鏂規硶http://www.shnenglu.com/mzty/archive/2005/12/29/2250.html姊﹀湪澶╂動姊﹀湪澶╂動Thu, 29 Dec 2005 09:12:00 GMThttp://www.shnenglu.com/mzty/archive/2005/12/29/2250.htmlhttp://www.shnenglu.com/mzty/comments/2250.htmlhttp://www.shnenglu.com/mzty/archive/2005/12/29/2250.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/2250.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/2250.html闃呰鍏ㄦ枃

]]>
vc涓鍐欐敞鍐岃〃http://www.shnenglu.com/mzty/archive/2005/12/24/2046.html姊﹀湪澶╂動姊﹀湪澶╂動Sat, 24 Dec 2005 06:40:00 GMThttp://www.shnenglu.com/mzty/archive/2005/12/24/2046.htmlhttp://www.shnenglu.com/mzty/comments/2046.htmlhttp://www.shnenglu.com/mzty/archive/2005/12/24/2046.html#Feedback1http://www.shnenglu.com/mzty/comments/commentRss/2046.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/2046.html闃呰鍏ㄦ枃

]]>
vc涓墦寮exe鏂囦歡http://www.shnenglu.com/mzty/archive/2005/12/24/2045.html姊﹀湪澶╂動姊﹀湪澶╂動Sat, 24 Dec 2005 06:38:00 GMThttp://www.shnenglu.com/mzty/archive/2005/12/24/2045.htmlhttp://www.shnenglu.com/mzty/comments/2045.htmlhttp://www.shnenglu.com/mzty/archive/2005/12/24/2045.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/2045.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/2045.html闃呰鍏ㄦ枃

]]>
Visual C++.NET涓?瀛楃涓茶漿鎹㈡柟娉?/title><link>http://www.shnenglu.com/mzty/archive/2005/12/23/2000.html</link><dc:creator>姊﹀湪澶╂動</dc:creator><author>姊﹀湪澶╂動</author><pubDate>Fri, 23 Dec 2005 04:52:00 GMT</pubDate><guid>http://www.shnenglu.com/mzty/archive/2005/12/23/2000.html</guid><wfw:comment>http://www.shnenglu.com/mzty/comments/2000.html</wfw:comment><comments>http://www.shnenglu.com/mzty/archive/2005/12/23/2000.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/mzty/comments/commentRss/2000.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mzty/services/trackbacks/2000.html</trackback:ping><description><![CDATA[     鎽樿:   <a href='http://www.shnenglu.com/mzty/archive/2005/12/23/2000.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/mzty/aggbug/2000.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mzty/" target="_blank">姊﹀湪澶╂動</a> 2005-12-23 12:52 <a href="http://www.shnenglu.com/mzty/archive/2005/12/23/2000.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>VC 鍜?MFC 鐨勪竴浜涘父瑙侀棶棰?msdn)http://www.shnenglu.com/mzty/archive/2005/12/15/1767.html姊﹀湪澶╂動姊﹀湪澶╂動Thu, 15 Dec 2005 01:30:00 GMThttp://www.shnenglu.com/mzty/archive/2005/12/15/1767.htmlhttp://www.shnenglu.com/mzty/comments/1767.htmlhttp://www.shnenglu.com/mzty/archive/2005/12/15/1767.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/1767.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/1767.html闃呰鍏ㄦ枃

]]>
The future of WTLhttp://www.shnenglu.com/mzty/archive/2005/11/16/1162.html姊﹀湪澶╂動姊﹀湪澶╂動Wed, 16 Nov 2005 08:00:00 GMThttp://www.shnenglu.com/mzty/archive/2005/11/16/1162.htmlhttp://www.shnenglu.com/mzty/comments/1162.htmlhttp://www.shnenglu.com/mzty/archive/2005/11/16/1162.html#Feedback0http://www.shnenglu.com/mzty/comments/commentRss/1162.htmlhttp://www.shnenglu.com/mzty/services/trackbacks/1162.html

The future of WTL

Interestingly, Pranish Kumar posted to the WTL discussion group on yahoo trying to gain opinions on how MS could best support the WTL developer community. You can find his message there, and I've copied my reply to him below:


> and the addition of knowledgeable support personnel to the Microsoft 
> official support channels.

 

I think it would be a great start for Microsoft to provide some form of officially sanctioned discussion forum. Yahoo groups is advertising supported, incredibly irritating to use (IMHO) and extremely unprofessional. I think microsoft could at least fund the provision of a mailing list / news group combination (with web archives) that would give people a little more confidence in believing that microsoft aren't ignoring WTL.

> There would also likely be significant
> changes to the library itself as we moved it forward to the latest
> version of ATL and the compiler. 

Hopefully this will happen - I'm sure nobody here wants to be unable to use WTL with the new ATL. If Nenad has managed before, surely it doesn't cost you _that much_ to do this.

> Related to this the team is investigating various ways that we can
> improve the experience for WTL users without incurring the
> prohibitive overhead. Some of the possibilities we are investigating
> include modifying the licensing for WTL so that the WTL community
> could support itself with a shared-source project.

Shared-source: please define.

Ignoring the precise definition of this term, some form of open development (a product able to live without Nenad - god forbid) could be important so that WTL can live on beyond the interest-span of one developer. However, a complete Open Source project could turn into a nightmare unless it is properly managed. Many open source projects suffer from the old "too many chefs spoil the broth" problem. A project like WTL could be especially succeptible to this because it is highly technical underneath the polished cover.

What would be ideal (it seems to me) would be some form of public project sponsored by microsoft - a web site explaining it, proper discussion groups and somewhere that community members can post examples etc. Contributions of source would be welcome from community members, but would have to be approved by a few key developers (preferably members of the MS ATL/MFC team). This retains some level of quality control, but doesn't suffer from the speed and cost problems of product-izing WTL.

Somebody else mentioned code documentation - I would like to add my voice to that plea. Some form of standardised code commenting mechanism that could be parsed with either Doxygen or NDoc or equivalent would be particularly helpful in providing better WTL documentation.

Just my two english pence,


Simon.

Posted by Simon at April 14, 2003 02:21 PM


]]> 青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
              日韩视频欧美视频| 亚洲人精品午夜| 久久久久久久综合日本| 国产精品美女主播| 国产一区二区三区久久久久久久久| 欧美日韩123| 欧美护士18xxxxhd| 在线日韩av片| 亚洲国产日韩精品| 久久久精品国产免大香伊| 国产精品免费网站| 久久一区二区三区国产精品| 欧美成人在线免费观看| 亚洲调教视频在线观看| 久久亚洲私人国产精品va媚药 | 国产欧美日韩精品在线| 久久影院午夜论| 欧美亚一区二区| 亚洲国产欧美久久| 国产欧美日韩综合| 亚洲免费观看高清完整版在线观看熊 | 欧美日韩精品一本二本三本| 久久免费视频网站| 国产精品国产亚洲精品看不卡15 | 国产精品视频| 在线一区日本视频| 亚洲一区免费视频| 欧美色道久久88综合亚洲精品| 免费亚洲电影在线| 欧美日韩伦理在线免费| 欧美日本韩国一区| 亚洲二区在线视频| 最近中文字幕mv在线一区二区三区四区 | 久久夜色精品| 亚洲国产岛国毛片在线| 亚洲精品国精品久久99热| 毛片精品免费在线观看| 欧美成人一品| 亚洲精品一线二线三线无人区| 亚洲欧美精品suv| 久久久久久久久蜜桃| 激情欧美亚洲| 欧美激情a∨在线视频播放| 亚洲美洲欧洲综合国产一区| 亚洲午夜小视频| 国精产品99永久一区一区| 欧美 日韩 国产一区二区在线视频| 欧美寡妇偷汉性猛交| 亚洲一区二区在线看| 亚洲国产精品va在线看黑人| 欧美电影在线观看完整版| 性欧美videos另类喷潮| 亚洲国产1区| 久久久精品国产免费观看同学| 亚洲高清在线精品| 国产女同一区二区| 欧美日韩裸体免费视频| 久久一二三四| 欧美一级在线视频| 翔田千里一区二区| 亚洲视频一二| 正在播放欧美视频| 日韩视频一区二区三区| 亚洲国产欧美一区二区三区丁香婷| 午夜久久99| 久久都是精品| 鲁大师成人一区二区三区| 免费亚洲一区| 久久久xxx| 久久亚洲春色中文字幕久久久| 午夜精品影院| 久久精品欧美日韩精品| 欧美一区二区三区男人的天堂 | 久久久久久一区二区三区| 性欧美暴力猛交69hd| 亚洲午夜伦理| 久久精品欧美日韩精品| 美女日韩在线中文字幕| 欧美精品一区二区三区蜜桃 | 国产亚洲精品7777| 国产一区999| 一本色道久久综合| 欧美一区二区日韩| 欧美va天堂在线| 夜夜夜久久久| 久久综合九色99| 国产精品久久久免费| 国产综合久久久久久鬼色| 亚洲日本中文字幕| 久久大逼视频| 亚洲天堂久久| 欧美精品在线看| 国产亚洲欧美另类一区二区三区| 亚洲三级色网| 久久久久久国产精品mv| 亚洲美女黄色片| 欧美成年视频| 亚洲欧洲一区二区三区| 久久成人18免费网站| 在线午夜精品| 欧美精品日韩三级| 亚洲九九爱视频| 欧美韩日高清| 欧美大成色www永久网站婷| 日韩视频国产视频| 你懂的视频欧美| 亚洲国产小视频在线观看| 久久综合激情| 篠田优中文在线播放第一区| 国产精品三级视频| 久久成人精品电影| 久久精品综合| 亚洲国产精品高清久久久| 乱中年女人伦av一区二区| 欧美一站二站| 亚洲精品免费在线| 日韩视频专区| 精品成人在线观看| 亚洲承认在线| 欧美午夜精品久久久久久久| 亚洲欧美亚洲| 欧美99久久| 久久激情视频| 欧美精品成人一区二区在线观看 | 亚洲欧美日韩中文播放| 西西人体一区二区| 亚洲视频一二| 久久免费视频网站| 亚洲自拍都市欧美小说| 麻豆91精品| 久久久久国内| 国产精品入口日韩视频大尺度| 美女尤物久久精品| 国产精品免费观看视频| 亚洲黄一区二区| 影音先锋久久久| 亚洲欧美另类在线观看| 亚洲乱码国产乱码精品精| 久久本道综合色狠狠五月| 亚洲视频在线一区| 欧美日韩不卡视频| 亚洲福利视频网站| 亚洲成色999久久网站| 久久精品99| 久久亚洲精品伦理| 久久色在线观看| 久久久久国产精品一区三寸 | 久久亚洲综合色一区二区三区| 国产精品扒开腿爽爽爽视频 | 欧美国产激情| 亚洲激情女人| 亚洲欧美在线一区| 国产日韩欧美三区| 久久国产精彩视频| 亚洲国产高清视频| 99精品福利视频| 国产视频久久久久| 久久福利毛片| 一片黄亚洲嫩模| 久久久7777| 亚洲一区二区三区成人在线视频精品| 欧美色大人视频| 久久影院亚洲| 亚洲午夜精品久久久久久app| 欧美专区在线观看| 亚洲三级电影在线观看| 国产一区二区精品久久99| 美女视频网站黄色亚洲| 中文国产成人精品| 亚洲第一中文字幕在线观看| 午夜一级在线看亚洲| 一区二区免费看| 亚洲福利视频三区| 国产自产在线视频一区| 国产精品九色蝌蚪自拍| 欧美**字幕| 蜜桃久久av一区| 久久亚洲综合色| 久久xxxx精品视频| 亚洲男同1069视频| 99热精品在线| 日韩一区二区免费高清| 欧美顶级少妇做爰| 欧美va天堂| 欧美激情一区二区| 亚洲国产精品一区二区尤物区| 久久久蜜桃一区二区人| 久久精品国产69国产精品亚洲| 午夜日韩在线观看| 久久精品国产亚洲5555| 久久精品综合| 女仆av观看一区| 欧美高清视频一二三区| 亚洲午夜影视影院在线观看| 在线欧美亚洲| 一本色道88久久加勒比精品 | 日韩性生活视频| 亚洲永久网站| 欧美成人免费小视频| 欧美性大战久久久久久久蜜臀|