掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
文字を動かすには? (ID:103757)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
うーん、マーキーするならTextboxかPictureBoxがいいと思いますけど…。 それはとにかくとして、TextBoxでやる場合、 先頭の文字をとって、一番後ろにくっつけて、 先頭の文字をとって、一番後ろにくっつけて…。 を適当な間隔で繰り返します ただちょっとしかたないですけど、全角半角の混じった文字をマーキーすると、 速度がヘンですね^^; あと、ちょっとめんどくさいですけど、PictureBoxとかお勧めです。 理論上はですけど、文字列を見えないフォームに文字をプリントし、 それの表示したい位置から表示したい位置までの部分をPaintPictureかBitBlt系APIでコピー それを少しずつずらしていって…。という風にやれば、 TextBoxでやるのなんか比べ物にならないほどいいできのができると思います。 それと、これらの動作は、Timerコントロールで動かすのはあんまりお勧めできません。 (他のソフトが使ってるTimerコントロールに影響されて速度が変になるみたいです…) 作りたてで、しかもTimerコントロールよりできることがすごく少ないですけど、 下のを使ってみてください Private Declare Function SetTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long Private Declare Function KillTimer Lib "user32" (ByVal hWnd As Long, ByVal nIDEvent As Long) As Long Dim id As Long, name As String, obj As Object Public Function TimerProc(hWnd As Long, uMsg As Long, idEvent As Long, dwTime As Long) As Long 'タイマープロクレス CallByName obj, name, VbMethod, hWnd, uMsg, idEvent, dwTime End Function Public Sub DeCreateTimer() 'タイマーを破棄します On Error Resume Next KillTimer obj.hWnd, id End Sub Public Sub CreateTimer(HasObject As Object, Optional CallBackName As String = "TimerProc", Optional Interval As Long = 1) 'タイマーを作ります、Timerコントロールよりは正確かも 'HasObject…コールバックプロジージャを持っているオブジェクト 'CallBackName…コールバックプロジージャの名前 'Interval…そのインターバル ' 'コールバック関数は以下のようになります。 'Public Sub TimerProc(hWnd As Long, Message As Long, id As Long, TickTime As Long) 'hWnd…タイマー作成もとハンドル 'Message…タイマーから送られるメッセージ 'id…タイマーのID 'TickTime…Windowsが起動してからの時間 Set obj = HasObject name = CallBackName id = SetTimer(obj.hWnd, Int(Rnd * 65535) + 1, Interval, AddressOf TimerProc) End Sub Timerコントロールよりは正確(?)です。たぶん。 本当はもうちょっと正確なタイマーがあるんですけどね^^;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.