none
テキストボックス内の文字を変数配列に入れる方法 RRS feed

  • 全般的な情報交換

  • テキストボックス内にい入れた数字の文字を、コマンドボタンをクリックした際に変数配列に入れたいのですが、やり方がわかりません。

    どなたか教えて頂けませんでしょうか?

     

     

    	private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
    			 }
    	private: System::Void textBox1_TextChanged(System::Object^ sender, System::EventArgs^ e) {
    			 }
    	private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
    
    
    			#if 0
    			int a,b,c;
    
    			a = 1;
    			b = 2;
    			c = a+b;
    			#endif
    
    			char a[128] 
    				
    			*a	= textBox1.text;
    
    
    
    			 }
    	private: System::Void textBox2_TextChanged(System::Object^ sender, System::EventArgs^ e) {
    			 }
    	};
    }
    このようなプログラムを作成してみたのですが、エラーが出るようで、デバッグしても*a =textBox1.textのところでブレークがかかってくれません。どうぞご教授の程よろしくお願い致します。

    • 種類を変更済み 山本春海 2011年8月16日 8:51 自己解決されているようなのでステータスを変更しました。
    2011年8月11日 1:51

すべての返信

  • 何処でどんなエラーが出るかぐらい明記してください。
    2011年8月11日 2:25
  • 回答頂きありがとうございます。

     

    	private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
    
    
    			#if 0
    			int a,b,c;
    
    			a = 1;
    			b = 2;
    			c = a+b;
    			#endif
    
    			char a[128];
    
    			*a = textBox1->text;
    
    
    
    			 }
    	private: System::Void textBox2_TextChanged(System::Object^ sender, System::EventArgs^ e) {
    			 }
    

    現在、このようなプログラムで”ソリューションのビルド”を実施してみたところ次のような出力ができてきました。

     

    1>------ ビルド開始: プロジェクト: test, 構成: Debug Win32 ------
    1> test.cpp
    1>c:\mywork\new_wireless_module\open\cc1101driver\trunk\vc_test\test\test\test\Form1.h(120): error C2039: 'text' : 'System::Windows::Forms::TextBox' のメンバーではありません。
    1>     c:\program files (x86)\reference assemblies\microsoft\framework\.netframework\v4.0\system.windows.forms.dll : 'System::Windows::Forms::TextBox' の宣言を確認してください。
    ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
    

    エラーの内容がいまいちよくわからないのですが、どのような意味で失敗が発生しているのでしょうか? ご教授頂けませんでしょうか。

     

     

     

     

     

     

     

    2011年8月11日 2:45
  • C++ は大文字小文字を区別する言語です。その観点で、System::Windows::Forms::TextBox のメンバ一覧を確認してください。

    で、それはそれとして、敢えて char[] に取り出す必要性は何なのでしょうか? 普通に扱う分には String^ で十分だと思いますが。

    // というか、正直言いますと C++/CLI を使うには前提技能が全然足りてないように見受けられるので、C# を使うか 非 CLR の C++ を勉強すべきかと……。

    2011年8月11日 3:10
  • 回答頂きありがとうございます。

     

    	private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
    
    
    			#if 0
    			int a,b,c;
    
    			a = 1;
    			b = 2;
    			c = a+b;
    			#endif
    
    			String^ a;
    
    			a = textBox1->Text;
    
    
    
    			 }
    

    このように書き直したら、ビルド成功しました!!

     

    ありがとうございました。

     

     

     

     

     

     

     

     

     

    2011年8月11日 4:38