Visual Basic 6.0 以降(古っ!)、Microsoft の開発言語とはすっかりご無沙汰なので(先日、Excel で VBA マクロを組んだくらいだ)、早速動作確認。
Visual Basic も 6.0 から .NET になって随分変わったと聞いていたが、ああ、ちゃんと Timer コンポーネントもあるじゃん。:-)
ユーザがプロパティ Interval に設定した(ミリ秒単位の)間隔でイベントを発生させるコンポーネントね。
こいつの存在を知っていると、いちいち Timer クラスを使った処理をコーディングするのが面倒臭いよ。
「Timer コンポーネントはないのかよ!」と。(笑)
Visual Studio 最高ぉ!(笑)
ちゅーことで、早速試しに Timer コンポーネントを使って、徐々にラベルが右にスライドしていく処理を書いてみる。
Public Class Form1
Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim x As Integer = Label1.Location.X
x = x + 10
Dim xy As New System.Drawing.Point(x, Label1.Location.Y)
Label1.Location = xy
End SubEnd Class
こんだけ。
ああ、簡単、簡単。
しかし、Label1.Location.X に直接値を突っ込めないのは面倒臭いな。
直接、Label1.Location.X に値を突っ込もうとしたら、「Expression は値であるため、代入式のターゲットにすることはできません。」って怒られてもうた(^^;
Point 構造体を持った変数を宣言して、そこを経由して Location に突っ込んでやらないといけない。
この辺りは、馴染むのに時間がかかりそうだ(^^;
コメントする