[IronPython] IronPython Silverlight 4 debugging... [No errors just not working]

Michael Foord fuzzyman at voidspace.org.uk
Wed Aug 11 18:37:02 CEST 2010


On 11/08/2010 17:34, Andrew Evans wrote:
> Hello I am running IronPython 2.7A and trying to debug a Silverlight 
> app. I am trying to figure out why my ship doesn't move when I press 
> the Arrow keys.
>
> here is the complete source minus most imports :D
Put some debugging in (append text to an html div) to see if your event 
handlers are being fired. That would my first step.

Michael

>
> Any ideas
>
> from System.Windows.Input import *
>
>
> velocity = 10
>
> class Gui():
>     def __init__(self):
>
>         self.grid = Grid()
>         self.canvas = Canvas(Background = SolidColorBrush(Colors.White))
>         self.canvas.Width = 640
>         self.canvas.Height = 432
>         self.bgImage = Image(
>             Source = BitmapImage(Uri("images/background.jpg", 
> UriKind.Relative))
>             )
>         self.canvas.SetTop(self.bgImage, 132)
>         self.canvas.SetLeft(self.bgImage, 0)
> #        self.textblock = TextBlock()
> ##        self.textblock.FontSize = 24
> ##        self.textblock.Text = 'This Really Works!!'
> ##        self.canvas.Children.Add(self.textblock)
>
>         self.ship = Image(
>             Source = BitmapImage(Uri("images/ship.png", UriKind.Relative))
>             )
>
>         self.canvas.SetTop(self.ship, 75)
>         self.canvas.SetLeft(self.ship, 25)
>
>         CompositionTarget.Rendering += EventHandler(self.ShootBG)
> ##        self.GenerateStarField(350)
>
>         self.canvas.Children.Add(self.bgImage)
>
>         self.canvas.Children.Add(self.ship)
>         self.grid.Children.Add(self.canvas)
>         Application.Current.RootVisual = self.grid
>         # This line should be something different Not sure what to use 
> instead of this
>         self.ship.KeyDown += KeyEventHandler(self.KeyDown_Control)
>
>
>     def ShootBG(self, s, e):
>         self.canvas.SetLeft(self.bgImage, 
> self.canvas.GetLeft(self.bgImage) - 1)
>         if self.canvas.GetLeft(self.bgImage) < -2110:
>             self.canvas.SetLeft(self.bgImage, 0)
>
>     def KeyDown_Control(self, s, e):
>         if e.Key == Key.Right:
>             self.canvas.SetLeft(self.ship, 
> self.canvas.GetLeft(self.ship) + velocity)
>         elif e.Key == Key.Left:
>             self.canvas.SetLeft(self.ship, 
> self.canvas.GetLeft(self.ship) - velocity)
>         elif e.Key == Key.Up:
>             self.canvas.SetTop(self.ship, 
> self.canvas.GetTop(self.ship) - velocity)
>         elif e.Key == Key.Down:
>             self.canvas.SetTop(self.ship, 
> self.canvas.GetTop(self.ship) + velocity)
>
> gui = Gui()
> gui
>
>
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>    


-- 
http://www.ironpythoninaction.com/
http://www.voidspace.org.uk/blog

READ CAREFULLY. By accepting and reading this email you agree, on behalf of your employer, to release me from all obligations and waivers arising from any and all NON-NEGOTIATED agreements, licenses, terms-of-service, shrinkwrap, clickwrap, browsewrap, confidentiality, non-disclosure, non-compete and acceptable use policies ("BOGUS AGREEMENTS") that I have entered into with your employer, its partners, licensors, agents and assigns, in perpetuity, without prejudice to my ongoing rights and privileges. You further represent that you have the authority to release me from any BOGUS AGREEMENTS on behalf of your employer.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20100811/3a486197/attachment.html>


More information about the Ironpython-users mailing list