Access2003のVBAについて
◇-?Access2003のVBAについて-しん(2005/1/29-19:52)No.233270 ┗?【多分解決】Re:Access2003のVB...-しん(2005/1/30-09:49)No.233420
▲このページのトップに戻る
▲このページのトップに戻る
233270 | Access2003のVBAについて | しん | 2005/1/29-19:52 |
メーカー名:東芝 OS名:WindowsXp パソコン名:PAEX522PDE 使用回線:ADSL -- コーテイングの抜粋です。 下記を走らせると、画面に赤い棒が描かれ360度グルグル回転します。 問題は マウスを押すと回転が止まる事です、これを止まらないように出来ないものでしょうか。 コード 5 Private pFrm As Form 6 Private pLine As Control 7 Private i As Single 8 9 Const k = 4025 10 Const x = 5000 11 Const y = 4400 12 Const p = 3.1416 / 180 13+++++++++++++++++++++++++++++ 14 Sub kaiten() 15 16 Dim frmName As String 17 '************************************************** 18 'フオームを描く 19 Set pFrm = CreateForm 20 With pFrm 21 .Section(0).Height = 8550 22 .OnTimer = "=myabcd()" 23 .TimerInterval = 70 24 End With 25 '************************************************** 26 '回転棒を描く 27 Set pLine = CreateControl(pFrm.Name, acLine) 28 With pLine 29 .Name = "pLine" 30 .Height = k 31 .BorderWidth = 6 32 .BorderColor = QBColor(12) 33 End With 34 '************************************************** 35 ' フオーム名と必要なコントロール名を得る 36 frmName = pFrm.Name 37 DoCmd.OpenForm pFrm.Name 38 Set pFrm = Forms(frmName) 39 End Sub 40++++++++++++++++++++++++++++++ 41 Function myabcd() 42 43 i = i - 3 44 If i < -360 Then i = 0 45 46 With pFrm.pLine 47 Select Case i 48 Case -90 To 0 49 .LineSlant = -1 50 .Left = x 51 .Top = y - k * Cos(i * p) 52 Case -180 To -90 53 .LineSlant = 0 54 .Top = y 55 Case -270 To -180 56 .LineSlant = -1 57 .Left = x - k * Sin(i * p) 58 Case -360 To -270 59 .LineSlant = 0 60 .Left = x - k * Sin(i * p) 61 .Top = y - k * Cos(i * p) 62 End Select 63 .Height = k * Abs(Cos(i * p)) 64 .Width = k * Abs(Sin(i * p)) 65 End With 66 End Function |
▲このページのトップに戻る
233420 | Re:Access2003のVBAについて | しん | 2005/1/30-09:49 |
記事番号233270へのコメント しんさんは No.233270「Access2003のVBAについて」で書きました。 >メーカー名:東芝 >OS名:WindowsXp >パソコン名:PAEX522PDE >使用回線:ADSL >-- >コーテイングの抜粋です。 >下記を走らせると、画面に赤い棒が描かれ360度グルグル回転します。 >問題は >マウスを押すと回転が止まる事です、これを止まらないように出来ないものでしょうか。 > > コード > 5 Private pFrm As Form > あれから色々Testしてみました、また先輩、諸氏に聞きました。 結論は Accessはマルチスレッドアプリケーションではないので Accessの機能だけでは不可能。 一様、この問題は納得しました。 |
何か一言(本ページで参考になったならないを含めて残してあります)
◎:解決 ○:参考になった ×:参考にならなかった !:アドバイスあり
参考 | 回数 | 投稿日時 | 何か一言 |
---|