鍔ㄦ佸瓙绫诲寲CComboBox浠ュ緱鍒板瓙鎺т欢EDIT鍙奓ISTBOX
鍙戝竷: 2008-6-26 14:28 | 浣滆: admin | 鏌ョ湅: 62娆
ComboBox鏄瘮杈冨父鐢ㄧ殑涓涓帶浠讹紝鏈変笁绉嶆牱寮忥細CBS_SIMPLE(绠鍗)锛孋BS_DROPDOWN(涓嬫媺)锛孋BS_DROPDOWNLIST(涓嬫媺鍒楄〃)锛屽叾涓笅鎷夊垪琛ㄦ牱寮忔槸涓嶅厑璁歌緭鍏ョ殑锛岀畝鍗曟牱寮忔槸姘歌繙閮芥樉绀轰笅鎷夋鐨勩
ComboBox鏄敱涓涓狶istBox鍜屼竴涓狤dit妗嗙粍鍚堣屾垚銆傛湰鏂囧皢浠ラ檺鍒跺彧鑳借緭鍏ョ數璇濆彿鐮佷负渚嬩粙缁嶅瓙绫诲寲杩囩▼寰楀埌Edit妗嗭紙绫讳技鐨勫彲浠ュ緱鍒癓istBox锛夈
鐢佃瘽鍙风爜鍙兘鏈夋暟瀛楀拰鈥-鈥濆拰鈥+鈥濈粍鎴愶紝缁忔煡ASCII琛紝鐭ラ亾瀵瑰簲鐨凙SCII鍊间负48-57鍙45鍜43鍏12涓笺
濂斤紝闂茶瘽鏆傚仠锛屽紑濮嬪瓙绫诲寲涔嬫梾銆
绗竴姝 鍏堝缓绔嬩竴涓狹FC搴旂敤绋嬪簭宸ョ▼锛屽彇鍚嶅彨UseSuperCombox(杩欓噷琛ㄧず涓涓婼ORRY锛屽洜涓洪『鎵嬪鍐欎簡涓涓猉锛屽懙鍛)銆
绗簩姝 鏂板缓涓涓狹FC绫伙紝閫夋嫨缁ф壙鑷狢Edit锛屽彇鍚嶅彨CSuperEdit锛岃繖涓被鏄敤鏉ユ浛鎹omboBox涓殑Edit妗嗙殑銆備唬鐮佸涓嬶細
² SuperEdit.h锛
class CSuperEdit : public CEdit
{
DECLARE_DYNAMIC(CSuperEdit)
public:
CSuperEdit();
virtual ~CSuperEdit();
protected:
DECLARE_MESSAGE_MAP()
public:
afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);
};
² SuperEdit.cpp锛
// SuperEdit.cpp : 瀹炵幇鏂囦欢
//
#include "stdafx.h"
#include "UseSuperCombox.h"
#include "SuperEdit.h"
// CSuperEdit
IMPLEMENT_DYNAMIC(CSuperEdit, CEdit)
CSuperEdit::CSuperEdit()
{
}
CSuperEdit::~CSuperEdit()
{
}
BEGIN_MESSAGE_MAP(CSuperEdit, CEdit)
ON_WM_CHAR()
END_MESSAGE_MAP()
// CSuperEdit 娑堟伅澶勭悊绋嬪簭
void CSuperEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if ( (nChar < 48 || nChar > 57) && nChar != 45 && nChar != 43 )
{
AfxMessageBox( "you must type the number or the char '-' or the char '+'" );
return;
}
CEdit::OnChar(nChar, nRepCnt, nFlags);
}
绗笁姝 鍐嶆柊寤轰竴涓狹FC绫伙紝閫夋嫨缁ф壙鑷狢ComboBox锛屽彇鍚嶅彨CSuperComboBox銆備唬鐮佸涓嬶紙娉細浠ヤ笅浠g爜鍘熸枃瑙乭ttp://support.microsoft.com/default.aspx?scid=kb;en-us;Q174667锛夛細
² SuperComboBox.h
#pragma once
#include "SuperEdit.h"
class CSuperComboBox : public CComboBox
{
DECLARE_DYNAMIC(CSuperComboBox)
public:
CSuperEdit m_Edit;
public:
CSuperComboBox();
virtual ~CSuperComboBox();
protected:
DECLARE_MESSAGE_MAP()
public:
afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
afx_msg void OnDestroy();
};
² SuperComboBox.cpp
// SuperComboBox.cpp : 瀹炵幇鏂囦欢
//
#include "stdafx.h"
#include "UseSuperCombox.h"
#include "SuperComboBox.h"
// SuperComboBox
IMPLEMENT_DYNAMIC(CSuperComboBox, CComboBox)
CSuperComboBox::CSuperComboBox()
{
}
CSuperComboBox::~CSuperComboBox()
{
}




发表于 2009-1-5 19:48
| 











