これまでで一番「情けなかったとき」はいつですか?

テキストボックスの値を変数に代入したいのですが、どういうコードを書けばいいですか?
例えばTextBox1の値を変数xに代入したいのですが。

A 回答 (2件)

VBでは処理の順番は、上から順に行います。

(VBだけでなく殆どのプログラム言語でも同じ)

質問者のコードは
計算をしてから、変数に値を入れている。

この回答への補足

Option Explicit On

Public Class Form1

Dim x As Long

Dim y As Long

Dim z As Long

Dim n As Long

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Me.Close()

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

End Sub

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged

End Sub

Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.TextChanged

End Sub

Private Sub TextBox4_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.TextChanged

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

x = TextBox1.Text

y = TextBox2.Text

z = TextBox3.Text

n = TextBox4.Text

TextBox5.Text = (z ^ n) - (x ^ n + y ^ n)

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub
End Class
このように変えたのですが、やはり答えが-1になってしまいます。
どこがおかしいのでしょうか?

補足日時:2013/09/18 18:58
    • good
    • 16
この回答へのお礼

ご回答ありがとうございます。

お礼日時:2013/09/18 18:57

x = TextBox1.text

この回答への補足

Option Explicit On

Public Class Form1

Dim x As Long

Dim y As Long

Dim z As Long

Dim n As Long

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Me.Close()

End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

End Sub

Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged

End Sub

Private Sub TextBox3_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.TextChanged

End Sub

Private Sub TextBox4_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.TextChanged

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click


TextBox5.Text = (z ^ n) - (x ^ n + y ^ n)

x = TextBox1.Text

y = TextBox2.Text

z = TextBox3.Text

n = TextBox4.Text


End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub
End Class
こんな感じで書いたのですが、計算の答えが必ず-1になってしまいます。
どこが間違っているのでしょうか?
後、変数の宣言文に直接つなげるやり方があると思いますが、その場合はどのように書けばいいでしょうか?
よろしくお願いします。

補足日時:2013/09/18 16:44
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

お礼日時:2013/09/18 16:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A