マーキーのようなものを作る


携帯サイトなどで、よく見られるマーキーのようなものを作ります。
文字がスクロールするものです。
右から左に文字がスクロールするのが普通みたいですが、
左から右にスクロールするものを作ってしまいました。

フォームにラベルとタイマーを配置して、
タイマーイベントのたびに文字をずらすだけです。

ソースコードは以下のようになります。

    '文字の左端の位置
    Dim iLeft As Integer
    'フォームロード時にタイマーをスタート
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'タイマーのインターバルで文字の進む速度が決まります
        Timer1.Interval = 10
        Timer1.Start()
    End Sub
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim objG As Graphics
      
        objG = Label1.CreateGraphics()
        'ここで一旦クリアしないと真っ黒になります
        objG.Clear(Label1.BackColor)
        '左端を決めて、文字を描画する
        objG.DrawString(Label1.Text, Label1.Font, New SolidBrush(Label1.ForeColor), iLeft, 0)
        '左端をずらす
        iLeft += 1
        If iLeft > Label1.Width Then
            '右端までいったら戻す
            iLeft = 0
        End If
        objG.Dispose()
    End Sub


右から左に移動させたい場合は、
この逆をおこなえばよいです。

ちなみにホームページでマーキーを使いたい場合は、
<marquee>[スクロールさせたい文字列]</marquee>
とするだけです。
[スクロールさせたい文字列]


posted by VB.NET+MSDE+ActiveReports at 16:45 | Comment(3) | TrackBack(0) | VB.NET
この記事へのコメント
carven 時計
Posted by 時計 男 at 2013年09月09日 12:29
腕時計 メンズ
Posted by 通販 時計 at 2013年09月09日 12:29
時計 ショッピング
Posted by エンポリオ at 2013年09月09日 12:29
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのTrackBack URL
http://blog.sakura.ne.jp/tb/6983380