[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [pygame] maximize broken..
On Sun, Oct 14, 2007 at 07:03:49PM -0400, inhahe wrote:
> oh.. yes, it's doing the same thing when i hit the maximize button.
> i'm not sure it was doing that before. i do call set_mode with the
> value of event.size. here's my code
>
> elif event.type == pygame.VIDEORESIZE:
> print 1
> print event
> screen = pygame.display.set_mode(event.size, pygame.RESIZABLE)
> screen.fill(background)
> pygame.display.flip()
> for control in controls:
> if control.visible: control.show()
Hi,
I'm not sure you should be doing so much in VIDEORESIZE, I wouldn't, but
I don't know if that's anything to do with your problem.
> if i take out pygame.RESIZABLE, it's the same problem except that half
> the title bar is above the monitor and therefore the top of the screen
> actually shows (and the bottom is still too high- the whole thing is
> just too high, whereas without pygame.RESIZABLE the title bar is in
> the right place and only the Surface is too high)
>
> maximizing just doesn't work right..
>
> maybe it does in a more current version of pygame. you mentioned a
> more current version has width and height in pygame.display.Info().
> mine doesn't. but mine is 1.7.1release, and that's the latest
> available for download on the webpage, do you mean i'd have to get the
> SVN and try to compile it for windows myself?
Possibly, I'm using an (old-ish) SVN version myself.
Did you try the minimal example I posted before?
Does it have the same problem?
If it has the same problem, try updating SDL.dll, otherwise it sounds
like a problem with your app.
You might have some luck just replacing the version of 'SDL.dll' in the
pygame directory with the latest from the SDL website.
http://www.libsdl.org/release/SDL-1.2.12-win32.zip
Put it somewhere like C:\Python24\Lib\site-packages\pygame\
(depends on your Python version and where you installed it)
I'd rename the version you've already got first - I usually use
'original-SDL.dll' - just in case :-)
It *should* be a drop-in replacement, but I've not tried it.
It definitely fixes some window positioning bugs like the ones you are
describing,
cheers,
John.
>
>
>
> On 10/14/07, John Popplewell <john@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> > On Sun, Oct 14, 2007 at 10:01:32AM -0400, inhahe wrote:
> > > hmm, I'm having a problem with this. when i maximize, the title
> > > bar goes into the right place, etc., but the actual viewing space
> > > is a little too far up. it stops, with no border, a few pixels
> > > above the taskbar, and starts a few pixels above the title bar but
> > > behind it so stuff is covered up by the title bar. is there any
> > > solution to this?
> > >
> > Does it work correctly when you click the maximize button manually?
> > The call to SDL_Maximize() is equivalent.
> >
> > To make resizing work you, you have to handle the Pygame VIDEORESIZE
> > event and ultimately call pygame.display.set_mode() with the value
> > of event.size.
> >
> > I sometimes find it all a bit tricky to get right, what with
> > potentially having to recreate all your surfaces again,
> >
> > cheers, John.
> >
> > > On 10/14/07, John Popplewell <john@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> > > > On Sun, Oct 14, 2007 at 04:55:14AM +0000, Richard wrote:
> > > > > How do I maximize the pygame window or start it maximized? not
> > > > > fullscreen, just maximized. by code, not by clicking on the
> > > > > maximize button. i can't find a way to do this. if there's
> > > > > really not a way to do it, that's kind of disappointing.
> > > > Hi,
> > > >
> > > > you can't using a built-in Pygame function. There is iconify()
> > > > but no corresponding restore() or maximize(). It is a limitation
> > > > of the underlying SDL library, which is being fixed in SDL-1.3
> > > > (or SDL-2).
> > > >
> > > > For now, I use the ctypes module to call the platform-specific
> > > > functions:
> > > >
> > > > <snipped!>
> > > >
> > > > regards, John.
> > > >
> > > >
> >