Loading ...
Sorry, an error occurred while loading the content.

Re: GetWindowRect problem

Expand Messages
  • miles_gould
    ... window ... Thanks! I d thought of that, but couldn t see how to do it - I couldn t see anything like MoveWindow or SetWindowRect in Win32::GuiTest, and I
    Message 1 of 4 , Nov 10, 2003
    • 0 Attachment
      --- In perlguitest@yahoogroups.com, "ted" <ted@o...> wrote:
      > I have a similar situation. The way I solved it was to move the
      window
      > to a known location on the screen. Be sure to account for different
      > screen resolutions if, like me, you cannot use 0,0.

      Thanks! I'd thought of that, but couldn't see how to do it - I
      couldn't see anything like MoveWindow or SetWindowRect in
      Win32::GuiTest, and I can't get Win32::API to build on my machine.
      Are you using the latter?

      Miles.
    • Dennis K. Paulsen
      Provided you are using Win32::GuiTest v1.49 or later (available from the Files section of this Yahoo! group) a SetWindowPos method is available. Below is an
      Message 2 of 4 , Nov 12, 2003
      • 0 Attachment
        Provided you are using Win32::GuiTest v1.49 or later (available from
        the Files section of this Yahoo! group) a SetWindowPos method is
        available. Below is an example, I hope it may help:


        #!/usr/bin/perl

        ## Pragmas/Directives/etc.
        use strict;
        use warnings;

        # Note: Using Win32::GuiTest v1.49 available
        # from the files section of this Yahoo group.
        use Win32::GuiTest qw/
        SetWindowPos
        FindWindowLike
        GetWindowRect
        /;

        ## Constants
        sub HWND_TOP() { 0; }

        ## Core

        # Get window handle. Using Notepad as an example.
        my ($win) = FindWindowLike(0, 'Notepad') or die('Unable to find a
        window!');

        # Determine current width and height of the window, so we can
        maintain those values
        # in the SetWindowPos call.
        my ($left, $top, $right, $bottom) = GetWindowRect($win);
        my ($w, $h) = ($right-$left, $bottom-$top);

        # Set window position to 0x0
        SetWindowPos($win, HWND_TOP, 0, 0, $w, $h, 0);


        Regards,
        Dennis K. Paulsen

        --- In perlguitest@yahoogroups.com, "miles_gould" <miles_gould@y...>
        wrote:
        > --- In perlguitest@yahoogroups.com, "ted" <ted@o...> wrote:
        > > I have a similar situation. The way I solved it was to move the
        > window
        > > to a known location on the screen. Be sure to account for
        different
        > > screen resolutions if, like me, you cannot use 0,0.
        >
        > Thanks! I'd thought of that, but couldn't see how to do it - I
        > couldn't see anything like MoveWindow or SetWindowRect in
        > Win32::GuiTest, and I can't get Win32::API to build on my machine.
        > Are you using the latter?
        >
        > Miles.
      Your message has been successfully submitted and would be delivered to recipients shortly.