数字と画像の処理について への返答

投稿で使用できる特殊コードの説明。(別タブで開きます。)
本名は入力しないようにしましょう。
投稿した後で削除するときに使うパスワードです。返答があった後は削除できません。
返答する人が目安にします。相手が小学生か社会人かで返答の仕方も変わります。
最初の投稿が質問の場合、質問者が解決時にチェックしてください。(以降も追加書き込み・返信は可能です。)
※「過去ログ」について書くときはその過去ログのURLも書いてください。

以下の返答は逆順(新しい順)に並んでいます。

投稿者 IO  (社会人) 投稿日時 2009/3/25 08:59:26
さなだ丸さんヴァンさん返信ありがとうございます。
私はPoint(0, 0)の()の中には数字しか使えないと思ってました。
ニ人のコードを見て()の中に変数を指定したら解決しました。
ありがとうございました。
投稿者 ヴァン  (社会人) 投稿日時 2009/3/25 04:32:01
こんにちは、

基本的にLabelのTextは使用しないと思いますが、
NumericUpDownなどは如何でしょうか?

PictureBox1.Location = New Point(numericUpDown1.Value, 0)

かな?
投稿者 さなだ丸  (社会人) 投稿日時 2009/3/25 01:50:07
追伸:上記のソースのままだと、ラベルに数字以外が入った場合にエラーになる可能性があります。
投稿者 さなだ丸  (社会人) 投稿日時 2009/3/25 01:48:19
はっきりやりたい内容がわからないのですが、

        PictureBox1.Location = New Point(clng(Label1.text),0)

ということがやりたいんでしょうかね?
投稿者 IO  (社会人) 投稿日時 2009/3/25 00:51:58
変数などの数字だけ画像を移動する処理を書いてるのですが、私のコードでは無駄に長くなってしまうので質問しにきました。
例えば、変数などの数字が1の場合は画像が1移動するという感じです。
私はifで書いてるのですがこれだと必要な数字分ElseIfを書かなくてはならなくて無駄にコードが長くなってしまうのです。
もう少し効率的でコンパクトなコードの書き方のコツを教えてください。

「開発環境」
VS2005EE
XP




        If Label1.txst = 1 Then

        PictureBox1.Location = New Point(1, 0)

        ElseIf Label1.txst = 2 Then

        PictureBox1.Location = New Point(2, 0)

        End If



よろしくお願いします。