Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
本当に初歩的なのですが(1+2=12)
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=9300#CommentId12590
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
魔界の仮面弁士
 (社会人)
投稿日時
2009/8/25 09:01:12
まず、「数値 + 数値」が「数値」なのは当然ですね。
問題は、文字列が混じった場合かと思います。
VB の場合、「文字列 + 文字列」は「文字列」となります。
そのため、"1" + "2" は、"12" となります。
一方、「文字列 + 数値」や「数値 + 文字列」の場合には数値演算となります。
(数値に変換できない文字が含まれているとエラーとなります)
> これを3にするにはどうしたらいいのでしょうか?
入力された値を『数値』にすれば良いことになります。
VB.NET であれば、TextBox の代わりに NumericUpDown を使う事ができます。
Text プロパティの代わりに、Value プロパティを使うことで、数値を得ることができます。
NumericUpDown3.Value = NumericUpDown1.Value + NumericUpDown2.Value
あるいは、CInt や CDec 関数などを用いて、文字列を数値に変換するという手もあります。
もし、数値以外の入力がありえる場合には、Decimal.TryParse メソッド等を用いると良いでしょう。