A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
こんにちは。
Waitでも良いですよ。
For t = 0 To 6
Picture1.Line (0, 0)-(100 * Cos(t), 100 * Sin(t))
Application.Wait (Now + TimeValue("0:00:03")) '←3秒待ち(ここを変更する)
Next t
No.3
- 回答日時:
★アドバイス
・アニメーションとしたい場合はタイマー・イベントを使って記述したほうが良いと思います。
for 分ではなくてタイマー・カウントを変数で用意します。
そのカウンタの値(0-6)で直線などを描画すればゆっくりと描画できます。
また、タイマー間隔を変更すれば自由に描画スピードをカスタマイズできます。
・簡単な方法では回答者 No.2 さんの Sleep() 関数と DoEvents メソッドをループ内に
記述するれば楽です。本格的なアニメーションを行うなら別スレッドを作成して実行させるか、
タイマー・イベントを組み合わせて下さい。
・以上。今後の参考に!
No.2
- 回答日時:
APIのSleepをループ内に挟むという手もありますよ。
待機時間をミリ秒単位で設定できるので、調整も 行いやすいでしょう。
あと、ループごとに確実に描画させるために、DoEventsも挟んだほうがいいと思います。
(もしくはPicture1.RefreshでもOKかな?)
但し、Sleep中は、確かスレッド内の全ての処理が停止するので、例えば
アニメーション中に、アプリ中のコマンドボタンを押そうとしたりしても
すぐにはイベントプロシージャが動作しません。
No.1
- 回答日時:
2行目と3行目の間にディレイ(タイマ)を入れてみては?
For t = 0 To 6
Picture1.Line (0, 0)-(100 * Cos(t), 100 * Sin(t))
for delay=0 to xxxxx '<- xxxxxに適当な数値を入れる
next
Next t
厳密に数ms遅らせたいと言うのであれば、タイマを入れた方が良いけど…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 実行時エラー´5854´ 文字列型パラメーターが長すぎます。 3 2023/06/08 21:17
- Visual Basic(VBA) For~Nextステートメントの終了条件について 1 2023/01/08 18:36
- 英語 Is to play soccer fun for you? は、正しい英文ですか? 1 2023/05/08 12:37
- Visual Basic(VBA) 数字が「0」の列を削除するため、下記のコードを実行しましたが、コンパイルエラーSubまたはFunct 3 2022/12/04 00:00
- 英語 分離不定詞 1 2023/07/16 17:29
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) outlook マクロが終了しません。 1 2022/09/02 11:14
- Visual Basic(VBA) 順列をランダムに発生するプログラム 1 2022/11/16 12:16
- 英語 方向を表すforとtoについて この2点の違いについてですが、例えばThe train is bou 5 2023/01/21 00:50
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
VBA処理を遅らせる
Access(アクセス)
-
エクセルVBAが途中で止まります
Visual Basic(VBA)
-
フォントの大きさ
Visual Basic(VBA)
-
-
4
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
5
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
6
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
7
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
8
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
9
エクセルVBAにおけるON TIMEメソッドの解除方法について
Visual Basic(VBA)
-
10
2重のDo~Loopは?
Visual Basic(VBA)
-
11
特定のキーを押すまでループさせるにはどうすればよいですか。
Visual Basic(VBA)
-
12
エクセルVBAでフォームのListboxをスクロールするには?
その他(Microsoft Office)
-
13
VBAでcallで呼び出したsubを終了させる
Visual Basic(VBA)
-
14
UserForm1.Showでエラーになります。
工学
-
15
EXCEL VBA マクロ 実行する度に処理速度がどんどん遅くなる原因が知りたい
Excel(エクセル)
-
16
ExcelVBAでセルを編集状態にする方法
Excel(エクセル)
-
17
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
18
エクセルでアルファベットか数値の判定をしたいのですが
Excel(エクセル)
-
19
excel vba でユーザーフォーム入力ができない
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ListBoxで改行したい
-
円の頂点の求め方を知りたいです。
-
for文の実行速度を遅くしたいの...
-
画面に絵を出す方法
-
MFCでのコンボボックスについて
-
C#で壁の当たり判定と自キャラ...
-
.NETのPictureBoxでウインドウ...
-
PowerPoint の VBA
-
図の削除直後の再描画
-
VC++ ドラッグしながらの図の...
-
【Delphi】 Canvasへの描画につ...
-
給紙トレイをダイアログを使わ...
-
VB.NETでphotoshopのレイヤーの...
-
立方体をくるくる回転させるプ...
-
VB 6.0 PictureBox のプロパテ...
-
VB.NETでグラフィックを描くと...
-
Word 描画オブジェクトを削除...
-
VC;;6.0のMFCで線を簡単に引け...
-
iPhone開発にて 透過PNGを表示...
-
ウインドウズアプリケーション...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ListBoxで改行したい
-
for文の実行速度を遅くしたいの...
-
Word 描画オブジェクトを削除...
-
C#を用いて描画する四角形の角...
-
ビットマップに描画をしてピク...
-
PowerPoint の VBA
-
給紙トレイをダイアログを使わ...
-
win32api複数のタイマーを同時...
-
MFCでのコンボボックスについて
-
画面に絵を出す方法
-
.NETのPictureBoxでウインドウ...
-
Excel VBA:コントロールボタン...
-
scilabでのグラフ描画時の軸設定
-
VC;;6.0のMFCで線を簡単に引け...
-
花火のアルゴリズム
-
Excel 2007で、フリーフォーム描画
-
水平線の描画
-
C# DrawImage 物理サイズでな...
-
VB.NETでグラフィックを描くと...
-
円の頂点の求め方を知りたいです。
おすすめ情報