2010-09-01 69 views
2

我有一個文本框是System::String^,我需要確認它只接受10位數字,沒有字母,符號等。我如何在C++ visual studio中執行此操作?我需要先將內容轉換爲std::string嗎?限制文本框只接受10位數字

+0

+1向我介紹'^'符號在C++中的使用方法 – 2010-09-01 20:20:39

+0

僅供參考,下次當您在類型附近發佈帶'^'的C++代碼時,表明這是Microsoft的託管C++。在*標準* C++中,'^'不是類型指示符後的有效標記。 – 2010-09-01 20:49:57

+3

該語言的專有名稱是C++/CLI,標籤是「C++ -cli」。 「Managed C++」是由VC++ 2002和VC++ 2003實現的一組不同的C++擴展(帶有諸如__gc和__interface的關鍵字)。它與C++/CLI不兼容,並且從VC++ 2005開始被後者所取代。另外,與MC++不同的是,C++/CLI有一個適當的公共規範文檔(Ecma-372)。 – 2010-09-01 21:44:31

回答

2

假設這是一個.NET winforms文本框(因爲您的片段是C++/CLI),您需要設置「MaxLength」屬性。 (類似於TextBox^ tb = gcnew TextBox(); tb->MaxLength = 10。)

對於只包含數字的部分,您希望爲KeyDown和KeyPress事件分配委託以確保輸入的字符是數字。示例代碼在這裏:http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keypress(v=VS.71).aspx

+0

在討論C++/CLI時,鏈接到VS 7.1文檔是沒有意義的。 – 2010-09-02 22:03:15

+1

http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keypress(VS.100).aspx 更好? – 2010-09-02 23:10:27

相關問題