[VB6] swf + vb, onmouse_move form unloaden

Pagina: 1
Acties:

  • fluppie007
  • Registratie: April 2005
  • Laatst online: 28-11 11:17
Beste Allemaal,

Ik probeer een simpel screensavertje te maken met een flash filetje.
Op zich werkt deze code, enkel als het flash object het hele scherm beslaat
doet de mousemove code het niet meer, omdat er geen zichtbare form oppervlakte is.
Nu heeft die flashcontrol jammer genoeg geen onmousemove event.
Wel een FSCommand, en kan je vanuit flash een commando sturen naar je player,
dit werkt wel, maar wanneer je daar het regeltje: "Unload Me" invoert dan crasht vb/exe

Dit is de code zonder FSCommand:

[CODE=vb]
Private Sub Form_Load()
Me.Width = Screen.Width
Me.Height = Screen.Height
Flash.Width = Screen.Width
Flash.Height = Screen.Height
Flash.Movie = App.Path & "\screensaver.swf"
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Static iCount As Long

If iCount > 2 Then
End
Else
iCount = iCount + 1
End If
End Sub
[/CODE=vb]

Dit is de code met FSCommand:

[CODE=vb]
Private Sub Form_Load()
Me.Width = Screen.Width
Me.Height = Screen.Height
Flash.Width = Screen.Width
Flash.Height = Screen.Height
Flash.Movie = App.Path & "\screensaver.swf"
End Sub

Private Sub Flash_FSCommand(ByVal command As String, ByVal args As String)
Unload Me
End Sub
[/CODE=vb]

Nu is mijn vraag, kan ik op éénvoudige wijze zelf een soort "eventchecker" schrijven ?
Evt super lame met een timer ofzo die elke 10ms kijkt of de muis bewogen heeft of iets
in dat genre... Of kan ik via die FSCommand toch mijn doel bereiken ?

  • OverSoft
  • Registratie: December 2000
  • Laatst online: 27-11 22:25
Als je via FSCommand gewoon "eind" stuurt als opdracht en in je Flash_FSCommand sub een simpele: "if command = "eind" then unload me" er in zet, ben je toch klaar?

Daarnaast kan je natuurlijk ook heel simpel gewoon je form de grootte van het scherm maken met:
form1.width = screen.width
form1.height = screen.height
Dan werkt de onmousemove wel en blijft je player universeel zodat je ieder willekeurig swfje erin kan gooien.

Dat had je al gedaan... ;)

Zoek eens naar de API mousepos, daarmee kun je de positie van de muis ophalen.
Daar kun je in principe alles mee.

[ Voor 60% gewijzigd door OverSoft op 20-01-2007 15:33 ]


  • fluppie007
  • Registratie: April 2005
  • Laatst online: 28-11 11:17
Idd met die cursorpos is het gelukt :)
werkt als een trein nu, nu nog even programmeren
dat wanneer de screensave afsluit dat hij IE zijn homepage opstart :9