teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

誤字

2018/04/13 09:00

投稿

freebird
freebird

スコア4

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,6 @@
1
1
  ●問題点
2
2
  現在VB.NETで電卓を作成しており、データの型変換に手こずっています。
3
- 小数点ボタンを押下した直後に0を入力すると、0が足されず小数点も消えてしまいます。
3
+ 小数点ボタンを押下した直後に数字0ボタンを入力すると、0が足されず小数点も消えてしまいます。
4
4
  例えば「2」、「.」、「0」と押して 2.0 としたいのに 2 となってしまいます。
5
5
 
6
6
  ------------------------------

1

コードの修正

2018/04/13 09:00

投稿

freebird
freebird

スコア4

title CHANGED
File without changes
body CHANGED
@@ -9,12 +9,25 @@
9
9
  テキストボックス(TextBox.Text)に入力した数値を3桁ずつ区切るカンマをつける処理を行う際、
10
10
  String型からDecimal型に変えるとき(ToDecimalプロシージャ)、小数点と0を取っ払ってしまうのが
11
11
  原因であると考えていますが、解決方法がわかりません。
12
+ ご存知の方、ご指南いただけると助かります。
12
13
 
14
+ ------------------------------
13
15
 
16
+ ●以下コード
17
+ ' 数字0ボタンクリック処理
18
+ Private Sub BtnZero_Click(sender As Object, e As EventArgs) Handles BtnZero.Click
19
+
20
+
21
+
14
- ansdc = ToDecimal(TextBox.Text)
22
+ ansdc = ToDecimal(TextBox.Text)
15
- ans = String.Format("{0:#,0.##########}", ansdc)
23
+ ans = String.Format("{0:#,0.##########}", ansdc)
16
- TextBox.Text = ans
24
+ TextBox.Text = ans
17
25
 
26
+
27
+
28
+
29
+
30
+
18
31
 
19
32
  ' TextBox.Textの中身をDecimal型にするプロシージャ(.Replaceのカンマ削除は、999以下でカンマがなければスルーされる)
20
33
  Private Function ToDecimal(ByVal textcomma As String) As Decimal