VBで倍数を出したい
よろしくお願いします。
おそらく基本なんだと思うのですが、さっぱりわかりません。
TextBox
Label
Buttonと並んでいて、
TextBoxに入った整数に対し、
Buttonを1度押すたびに、
Labelに倍数が表記されていく、
という趣旨なのですが。
まず、前段階として下記を作らされました。
Public Class Form1
Dim i As Integer
Dim m As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
i = TextBox1.Text
lblmessage.Text = i + m
m = lblmessage.Text
End Sub
End Class
このように、labelの数字がどんどん変わっていくのはできたのですが、問題は、
Text…10
Label…10
20
30
40
50
60
70
80
90
100
となり、しかも一度に出るのではなく、Buttonひと押しにつき一つの解が出ね
次の一押しで改行され解が出る。
かつ、100で打ち止めにすること…だそうです。
いちおうめちゃくちゃですが、みんな風に作りました。
Public Class Form1
Dim a As Integer
Dim b As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim b As Integer = 10
a = TextBox1.Text
lblMessage.Text = a & ControlChars.CrLf & a + b
End Sub
End Class
どうかヒントだけでもお願いします。
No.1ベストアンサー
- 回答日時:
はじめまして
突っ込みどころ満載すぎてあまりに楽しいので私も一緒に考えてみました。
全段階で作ったプログラムでは、ボタンを押すたびに数字がすべて切り替わるわけですね。
10 → 20 → 30 →…
qc4 さんのサンプルを拝見するに、問題はどんどん追加されるイメージですかね。
10 → 10 ( 改行 ) 20 → 10 ( 改行 ) 20 ( 改行 ) 30 →…
で、ポイントは 100 まで表示されたらそこで打ち止め。
Button1 の Click イベントで、100 より大きければ抜けるでいいと思います。
その観点から考えてソースを拝見しますに。
A. Dim b As Integer = 10 は不要
これでは TextBox1 に何を入れても 10 ずつ加算されますよ。あくまでも倍数の問題ですよね。
そういう意味では全段階で作ったプログラムも変なのですが、倍数の解釈次第ですか。
B. lblMessage.Text = a & ControlChars.CrLf & a + b は、何を表示しようとしているのかご理解されていますか。
最初の a は TextBox1.Text の値ですよね。つまり初期値の 10 です。
次の ControlChars.CrLf は改行。これはまぁいいとして。
最後の a + b は、初期値の 10 と、宣言されている 10 ですよね。
で、前段階で作ったプログラムの「m = lblmessage.Text」に当たる部分が見当たらないので、何度ボタンを押しても 10 ( 改行 ) 20 しか表示されないのではないでしょうかね。
以上を踏まえてプログラム
Public Class Form1
Dim i As Integer
Dim m As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
i = TextBox1.Text
m = i + m
If m > 100 Then
Return
End If
lblMessage.Text = lblMessage.Text & ControlChars.CrLf & m
End Sub
End Class
変数名など極力、前段階のプログラムに合わせました。
ありがとうございます。
100で打ち止めのところは初めてなので助かりました。が…
>m = i + m
これでいいんですか…。難しく考えてました。
>lblMessage.Text = lblMessage.Text & ControlChars.CrLf & m
これもこれでいいんですか。
&の意味を全然分かってませんでした。
どうもありがとうございます。
これから復習です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Chr(13)とChr(10)の違いは?
-
wordで均等割り付けをするとき...
-
棒グラフ 横軸の縦書き2列にし...
-
バッチで指定ファイルの文末に...
-
エクセルでセル内改行の複数行...
-
excelで勝手に改行されます
-
履歴書の志望動機の所で、「ま...
-
Accessにインポートしようとす...
-
パワーポイントのテキストボックス
-
【エクセル】セル最後にある無...
-
PCに表示された内容(文字)をコ...
-
ダブルクォーテーション(")で...
-
イミディエイトウインドウの最...
-
VBA フォームのテキストボック...
-
Tera Term のマクロでの改行コ...
-
Excel セル内の最初と最後の改...
-
Wordで原稿用紙設定の時に、ペ...
-
短歌が1行で収まらない場合、...
-
PDFの改行URLを有効にす...
-
PDFファイルへの文字入力のサイズ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Chr(13)とChr(10)の違いは?
-
履歴書の志望動機の所で、「ま...
-
【エクセル】セル最後にある無...
-
wordで均等割り付けをするとき...
-
PDFの改行URLを有効にす...
-
excelで勝手に改行されます
-
棒グラフ 横軸の縦書き2列にし...
-
Excel セル内の最初と最後の改...
-
パワーポイントのテキストボックス
-
wordの何も書かれていない2ペー...
-
バッチで指定ファイルの文末に...
-
エクセルでセル内改行の複数行...
-
Tera Term のマクロでの改行コ...
-
短歌が1行で収まらない場合、...
-
Excel VBAで改行を含めたセルの...
-
EXCEL(VBA) 末尾の改行のみ削...
-
Accessにインポートしようとす...
-
VBA フォームのテキストボック...
-
WordにURLを載せると
-
Access2003で特定列の改行コー...
おすすめ情報